//
// Functional interface to the Cephei Factories
//
module Cephei
  module Fun =
    begin
      let Doubles = new Cephei.CDouble_Factory () :> Cephei.Double_Factory
      let Ints = new Cephei.CInt_Factory () :> Cephei.Int_Factory 
      let UInts = new Cephei.CUInt_Factory () :> Cephei.UInt_Factory 
      let Longs = new Cephei.CLong_Factory () :> Cephei.Long_Factory 
      let ULongs = new Cephei.CULong_Factory () :> Cephei.ULong_Factory 
      let DateTimes = new Cephei.CDateTime_Factory () :> Cephei.DateTime_Factory 
      let Bools = new Cephei.CBool_Factory () :> Cephei.Bool_Factory 
      let Strings = new Cephei.CString_Factory () :> Cephei.String_Factory 
    
      let Cells = new Cephei.CellBuilder ()
    
      let Sessions = new Cephei.QL.CSession_Factory () :> Cephei.QL.ISession_Factory 

      let AmericanExercise = new Cephei.QL.CAmericanExercise_Factory () :> Cephei.QL.IAmericanExercise_Factory 
      let BermudanExercise = new Cephei.QL.CBermudanExercise_Factory () :> Cephei.QL.IBermudanExercise_Factory 
      let CashFlow = new Cephei.QL.CCashFlow_Factory () :> Cephei.QL.ICashFlow_Factory 
      let Currency = new Cephei.QL.CCurrency_Factory () :> Cephei.QL.ICurrency_Factory 
      let DiscretizedAsset = new Cephei.QL.CDiscretizedAsset_Factory () :> Cephei.QL.IDiscretizedAsset_Factory 
      let DiscretizedDiscountBond = new Cephei.QL.CDiscretizedDiscountBond_Factory () :> Cephei.QL.IDiscretizedDiscountBond_Factory 
      let DiscretizedOption = new Cephei.QL.CDiscretizedOption_Factory () :> Cephei.QL.IDiscretizedOption_Factory 
      let EarlyExercise = new Cephei.QL.CEarlyExercise_Factory () :> Cephei.QL.IEarlyExercise_Factory 
      let Error = new Cephei.QL.CError_Factory () :> Cephei.QL.IError_Factory 
      let EuropeanExercise = new Cephei.QL.CEuropeanExercise_Factory () :> Cephei.QL.IEuropeanExercise_Factory 
      let Event = new Cephei.QL.CEvent_Factory () :> Cephei.QL.IEvent_Factory 
      let ExchangeRate = new Cephei.QL.CExchangeRate_Factory () :> Cephei.QL.IExchangeRate_Factory 
      let Exercise = new Cephei.QL.CExercise_Factory () :> Cephei.QL.IExercise_Factory 
      let Greeks = new Cephei.QL.CGreeks_Factory () :> Cephei.QL.IGreeks_Factory 
      let Index = new Cephei.QL.CIndex_Factory () :> Cephei.QL.IIndex_Factory 
      let Instrument = new Cephei.QL.CInstrument_Factory () :> Cephei.QL.IInstrument_Factory 
      let InstrumentResults = new Cephei.QL.CInstrumentResults_Factory () :> Cephei.QL.IInstrumentResults_Factory 
      let InterestRate = new Cephei.QL.CInterestRate_Factory () :> Cephei.QL.IInterestRate_Factory 
      let IntervalPrice = new Cephei.QL.CIntervalPrice_Factory () :> Cephei.QL.IIntervalPrice_Factory 
      let Lattice = new Cephei.QL.CLattice_Factory () :> Cephei.QL.ILattice_Factory 
      let Money = new Cephei.QL.CMoney_Factory () :> Cephei.QL.IMoney_Factory 
      let MoreGreeks = new Cephei.QL.CMoreGreeks_Factory () :> Cephei.QL.IMoreGreeks_Factory 
      let Option = new Cephei.QL.COption_Factory () :> Cephei.QL.IOption_Factory 
      let Payoff = new Cephei.QL.CPayoff_Factory () :> Cephei.QL.IPayoff_Factory 
      let Position = new Cephei.QL.CPosition_Factory () :> Cephei.QL.IPosition_Factory 
      let PricingEngine = new Cephei.QL.CPricingEngine_Factory () :> Cephei.QL.IPricingEngine_Factory 
      let PricingEngineArguments = new Cephei.QL.CPricingEngineArguments_Factory () :> Cephei.QL.IPricingEngineArguments_Factory 
      let PricingEngineResults = new Cephei.QL.CPricingEngineResults_Factory () :> Cephei.QL.IPricingEngineResults_Factory 
      let Protection = new Cephei.QL.CProtection_Factory () :> Cephei.QL.IProtection_Factory 
      let Quote = new Cephei.QL.CQuote_Factory () :> Cephei.QL.IQuote_Factory 
      let SavedSettings = new Cephei.QL.CSavedSettings_Factory () :> Cephei.QL.ISavedSettings_Factory 
      let StochasticProcess = new Cephei.QL.CStochasticProcess_Factory () :> Cephei.QL.IStochasticProcess_Factory 
      let StochasticProcess1D = new Cephei.QL.CStochasticProcess1D_Factory () :> Cephei.QL.IStochasticProcess1D_Factory 
      let TermStructure = new Cephei.QL.CTermStructure_Factory () :> Cephei.QL.ITermStructure_Factory 
      let TimeGrid = new Cephei.QL.CTimeGrid_Factory () :> Cephei.QL.ITimeGrid_Factory 
      let VolatilityCompositor = new Cephei.QL.CVolatilityCompositor_Factory () :> Cephei.QL.IVolatilityCompositor_Factory 

      module Cashflows =
        begin
          let AnalyticHaganPricer = new Cephei.QL.Cashflows.CAnalyticHaganPricer_Factory () :> Cephei.QL.Cashflows.IAnalyticHaganPricer_Factory 
          let AverageBMACoupon = new Cephei.QL.Cashflows.CAverageBMACoupon_Factory () :> Cephei.QL.Cashflows.IAverageBMACoupon_Factory 
          let AverageBMALeg = new Cephei.QL.Cashflows.CAverageBMALeg_Factory () :> Cephei.QL.Cashflows.IAverageBMALeg_Factory 
          let BachelierYoYInflationCouponPricer = new Cephei.QL.Cashflows.CBachelierYoYInflationCouponPricer_Factory () :> Cephei.QL.Cashflows.IBachelierYoYInflationCouponPricer_Factory 
          let BlackIborCouponPricer = new Cephei.QL.Cashflows.CBlackIborCouponPricer_Factory () :> Cephei.QL.Cashflows.IBlackIborCouponPricer_Factory 
          let BlackVanillaOptionPricer = new Cephei.QL.Cashflows.CBlackVanillaOptionPricer_Factory () :> Cephei.QL.Cashflows.IBlackVanillaOptionPricer_Factory 
          let BlackYoYInflationCouponPricer = new Cephei.QL.Cashflows.CBlackYoYInflationCouponPricer_Factory () :> Cephei.QL.Cashflows.IBlackYoYInflationCouponPricer_Factory 
          let CappedFlooredCmsCoupon = new Cephei.QL.Cashflows.CCappedFlooredCmsCoupon_Factory () :> Cephei.QL.Cashflows.ICappedFlooredCmsCoupon_Factory 
          let CappedFlooredCoupon = new Cephei.QL.Cashflows.CCappedFlooredCoupon_Factory () :> Cephei.QL.Cashflows.ICappedFlooredCoupon_Factory 
          let CappedFlooredIborCoupon = new Cephei.QL.Cashflows.CCappedFlooredIborCoupon_Factory () :> Cephei.QL.Cashflows.ICappedFlooredIborCoupon_Factory 
          let CappedFlooredYoYInflationCoupon = new Cephei.QL.Cashflows.CCappedFlooredYoYInflationCoupon_Factory () :> Cephei.QL.Cashflows.ICappedFlooredYoYInflationCoupon_Factory 
          let CashFlows = new Cephei.QL.Cashflows.CCashFlows_Factory () :> Cephei.QL.Cashflows.ICashFlows_Factory 
          let CmsCoupon = new Cephei.QL.Cashflows.CCmsCoupon_Factory () :> Cephei.QL.Cashflows.ICmsCoupon_Factory 
          let CmsCouponPricer = new Cephei.QL.Cashflows.CCmsCouponPricer_Factory () :> Cephei.QL.Cashflows.ICmsCouponPricer_Factory 
          let CmsLeg = new Cephei.QL.Cashflows.CCmsLeg_Factory () :> Cephei.QL.Cashflows.ICmsLeg_Factory 
          let Coupon = new Cephei.QL.Cashflows.CCoupon_Factory () :> Cephei.QL.Cashflows.ICoupon_Factory 
          let DigitalCmsCoupon = new Cephei.QL.Cashflows.CDigitalCmsCoupon_Factory () :> Cephei.QL.Cashflows.IDigitalCmsCoupon_Factory 
          let DigitalCmsLeg = new Cephei.QL.Cashflows.CDigitalCmsLeg_Factory () :> Cephei.QL.Cashflows.IDigitalCmsLeg_Factory 
          let DigitalCoupon = new Cephei.QL.Cashflows.CDigitalCoupon_Factory () :> Cephei.QL.Cashflows.IDigitalCoupon_Factory 
          let DigitalIborCoupon = new Cephei.QL.Cashflows.CDigitalIborCoupon_Factory () :> Cephei.QL.Cashflows.IDigitalIborCoupon_Factory 
          let DigitalIborLeg = new Cephei.QL.Cashflows.CDigitalIborLeg_Factory () :> Cephei.QL.Cashflows.IDigitalIborLeg_Factory 
          let DigitalReplication = new Cephei.QL.Cashflows.CDigitalReplication_Factory () :> Cephei.QL.Cashflows.IDigitalReplication_Factory 
          let Dividend = new Cephei.QL.Cashflows.CDividend_Factory () :> Cephei.QL.Cashflows.IDividend_Factory 
          let Duration = new Cephei.QL.Cashflows.CDuration_Factory () :> Cephei.QL.Cashflows.IDuration_Factory 
          let FixedDividend = new Cephei.QL.Cashflows.CFixedDividend_Factory () :> Cephei.QL.Cashflows.IFixedDividend_Factory 
          let FixedRateCoupon = new Cephei.QL.Cashflows.CFixedRateCoupon_Factory () :> Cephei.QL.Cashflows.IFixedRateCoupon_Factory 
          let FixedRateLeg = new Cephei.QL.Cashflows.CFixedRateLeg_Factory () :> Cephei.QL.Cashflows.IFixedRateLeg_Factory 
          let FloatingRateCoupon = new Cephei.QL.Cashflows.CFloatingRateCoupon_Factory () :> Cephei.QL.Cashflows.IFloatingRateCoupon_Factory 
          let FloatingRateCouponPricer = new Cephei.QL.Cashflows.CFloatingRateCouponPricer_Factory () :> Cephei.QL.Cashflows.IFloatingRateCouponPricer_Factory 
          let FractionalDividend = new Cephei.QL.Cashflows.CFractionalDividend_Factory () :> Cephei.QL.Cashflows.IFractionalDividend_Factory 
          let GFunction = new Cephei.QL.Cashflows.CGFunction_Factory () :> Cephei.QL.Cashflows.IGFunction_Factory 
          let GFunctionFactory = new Cephei.QL.Cashflows.CGFunctionFactory_Factory () :> Cephei.QL.Cashflows.IGFunctionFactory_Factory 
          let HaganPricer = new Cephei.QL.Cashflows.CHaganPricer_Factory () :> Cephei.QL.Cashflows.IHaganPricer_Factory 
          let IborCoupon = new Cephei.QL.Cashflows.CIborCoupon_Factory () :> Cephei.QL.Cashflows.IIborCoupon_Factory 
          let IborCouponPricer = new Cephei.QL.Cashflows.CIborCouponPricer_Factory () :> Cephei.QL.Cashflows.IIborCouponPricer_Factory 
          let IborLeg = new Cephei.QL.Cashflows.CIborLeg_Factory () :> Cephei.QL.Cashflows.IIborLeg_Factory 
          let IndexedCashFlow = new Cephei.QL.Cashflows.CIndexedCashFlow_Factory () :> Cephei.QL.Cashflows.IIndexedCashFlow_Factory 
          let InflationCoupon = new Cephei.QL.Cashflows.CInflationCoupon_Factory () :> Cephei.QL.Cashflows.IInflationCoupon_Factory 
          let InflationCouponPricer = new Cephei.QL.Cashflows.CInflationCouponPricer_Factory () :> Cephei.QL.Cashflows.IInflationCouponPricer_Factory 
          let NumericHaganPricer = new Cephei.QL.Cashflows.CNumericHaganPricer_Factory () :> Cephei.QL.Cashflows.INumericHaganPricer_Factory 
          let OvernightIndexedCoupon = new Cephei.QL.Cashflows.COvernightIndexedCoupon_Factory () :> Cephei.QL.Cashflows.IOvernightIndexedCoupon_Factory 
          let OvernightLeg = new Cephei.QL.Cashflows.COvernightLeg_Factory () :> Cephei.QL.Cashflows.IOvernightLeg_Factory 
          let RangeAccrualFloatersCoupon = new Cephei.QL.Cashflows.CRangeAccrualFloatersCoupon_Factory () :> Cephei.QL.Cashflows.IRangeAccrualFloatersCoupon_Factory 
          let RangeAccrualLeg = new Cephei.QL.Cashflows.CRangeAccrualLeg_Factory () :> Cephei.QL.Cashflows.IRangeAccrualLeg_Factory 
          let RangeAccrualPricer = new Cephei.QL.Cashflows.CRangeAccrualPricer_Factory () :> Cephei.QL.Cashflows.IRangeAccrualPricer_Factory 
          let RangeAccrualPricerByBgm = new Cephei.QL.Cashflows.CRangeAccrualPricerByBgm_Factory () :> Cephei.QL.Cashflows.IRangeAccrualPricerByBgm_Factory 
          let Replication = new Cephei.QL.Cashflows.CReplication_Factory () :> Cephei.QL.Cashflows.IReplication_Factory 
          let SimpleCashFlow = new Cephei.QL.Cashflows.CSimpleCashFlow_Factory () :> Cephei.QL.Cashflows.ISimpleCashFlow_Factory 
          let TimeBasket = new Cephei.QL.Cashflows.CTimeBasket_Factory () :> Cephei.QL.Cashflows.ITimeBasket_Factory 
          let UnitDisplacedBlackYoYInflationCouponPricer = new Cephei.QL.Cashflows.CUnitDisplacedBlackYoYInflationCouponPricer_Factory () :> Cephei.QL.Cashflows.IUnitDisplacedBlackYoYInflationCouponPricer_Factory 
          let VanillaOptionPricer = new Cephei.QL.Cashflows.CVanillaOptionPricer_Factory () :> Cephei.QL.Cashflows.IVanillaOptionPricer_Factory 
          let YoYInflationCoupon = new Cephei.QL.Cashflows.CYoYInflationCoupon_Factory () :> Cephei.QL.Cashflows.IYoYInflationCoupon_Factory 
          let YoYInflationCouponPricer = new Cephei.QL.Cashflows.CYoYInflationCouponPricer_Factory () :> Cephei.QL.Cashflows.IYoYInflationCouponPricer_Factory 
          let yoyInflationLeg = new Cephei.QL.Cashflows.CyoyInflationLeg_Factory () :> Cephei.QL.Cashflows.IyoyInflationLeg_Factory 
        end

      module Currencies =
        begin
          let ARSCurrency = new Cephei.QL.Currencies.CARSCurrency_Factory () :> Cephei.QL.Currencies.IARSCurrency_Factory 
          let ATSCurrency = new Cephei.QL.Currencies.CATSCurrency_Factory () :> Cephei.QL.Currencies.IATSCurrency_Factory 
          let AUDCurrency = new Cephei.QL.Currencies.CAUDCurrency_Factory () :> Cephei.QL.Currencies.IAUDCurrency_Factory 
          let BDTCurrency = new Cephei.QL.Currencies.CBDTCurrency_Factory () :> Cephei.QL.Currencies.IBDTCurrency_Factory 
          let BEFCurrency = new Cephei.QL.Currencies.CBEFCurrency_Factory () :> Cephei.QL.Currencies.IBEFCurrency_Factory 
          let BGLCurrency = new Cephei.QL.Currencies.CBGLCurrency_Factory () :> Cephei.QL.Currencies.IBGLCurrency_Factory 
          let BRLCurrency = new Cephei.QL.Currencies.CBRLCurrency_Factory () :> Cephei.QL.Currencies.IBRLCurrency_Factory 
          let BYRCurrency = new Cephei.QL.Currencies.CBYRCurrency_Factory () :> Cephei.QL.Currencies.IBYRCurrency_Factory 
          let CADCurrency = new Cephei.QL.Currencies.CCADCurrency_Factory () :> Cephei.QL.Currencies.ICADCurrency_Factory 
          let CHFCurrency = new Cephei.QL.Currencies.CCHFCurrency_Factory () :> Cephei.QL.Currencies.ICHFCurrency_Factory 
          let CLPCurrency = new Cephei.QL.Currencies.CCLPCurrency_Factory () :> Cephei.QL.Currencies.ICLPCurrency_Factory 
          let CNYCurrency = new Cephei.QL.Currencies.CCNYCurrency_Factory () :> Cephei.QL.Currencies.ICNYCurrency_Factory 
          let COPCurrency = new Cephei.QL.Currencies.CCOPCurrency_Factory () :> Cephei.QL.Currencies.ICOPCurrency_Factory 
          let CYPCurrency = new Cephei.QL.Currencies.CCYPCurrency_Factory () :> Cephei.QL.Currencies.ICYPCurrency_Factory 
          let CZKCurrency = new Cephei.QL.Currencies.CCZKCurrency_Factory () :> Cephei.QL.Currencies.ICZKCurrency_Factory 
          let DEMCurrency = new Cephei.QL.Currencies.CDEMCurrency_Factory () :> Cephei.QL.Currencies.IDEMCurrency_Factory 
          let DKKCurrency = new Cephei.QL.Currencies.CDKKCurrency_Factory () :> Cephei.QL.Currencies.IDKKCurrency_Factory 
          let EEKCurrency = new Cephei.QL.Currencies.CEEKCurrency_Factory () :> Cephei.QL.Currencies.IEEKCurrency_Factory 
          let ESPCurrency = new Cephei.QL.Currencies.CESPCurrency_Factory () :> Cephei.QL.Currencies.IESPCurrency_Factory 
          let EURCurrency = new Cephei.QL.Currencies.CEURCurrency_Factory () :> Cephei.QL.Currencies.IEURCurrency_Factory 
          let ExchangeRateManager = new Cephei.QL.Currencies.CExchangeRateManager_Factory () :> Cephei.QL.Currencies.IExchangeRateManager_Factory 
          let FIMCurrency = new Cephei.QL.Currencies.CFIMCurrency_Factory () :> Cephei.QL.Currencies.IFIMCurrency_Factory 
          let FRFCurrency = new Cephei.QL.Currencies.CFRFCurrency_Factory () :> Cephei.QL.Currencies.IFRFCurrency_Factory 
          let GBPCurrency = new Cephei.QL.Currencies.CGBPCurrency_Factory () :> Cephei.QL.Currencies.IGBPCurrency_Factory 
          let GRDCurrency = new Cephei.QL.Currencies.CGRDCurrency_Factory () :> Cephei.QL.Currencies.IGRDCurrency_Factory 
          let HKDCurrency = new Cephei.QL.Currencies.CHKDCurrency_Factory () :> Cephei.QL.Currencies.IHKDCurrency_Factory 
          let HUFCurrency = new Cephei.QL.Currencies.CHUFCurrency_Factory () :> Cephei.QL.Currencies.IHUFCurrency_Factory 
          let IEPCurrency = new Cephei.QL.Currencies.CIEPCurrency_Factory () :> Cephei.QL.Currencies.IIEPCurrency_Factory 
          let ILSCurrency = new Cephei.QL.Currencies.CILSCurrency_Factory () :> Cephei.QL.Currencies.IILSCurrency_Factory 
          let INRCurrency = new Cephei.QL.Currencies.CINRCurrency_Factory () :> Cephei.QL.Currencies.IINRCurrency_Factory 
          let IQDCurrency = new Cephei.QL.Currencies.CIQDCurrency_Factory () :> Cephei.QL.Currencies.IIQDCurrency_Factory 
          let IRRCurrency = new Cephei.QL.Currencies.CIRRCurrency_Factory () :> Cephei.QL.Currencies.IIRRCurrency_Factory 
          let ISKCurrency = new Cephei.QL.Currencies.CISKCurrency_Factory () :> Cephei.QL.Currencies.IISKCurrency_Factory 
          let ITLCurrency = new Cephei.QL.Currencies.CITLCurrency_Factory () :> Cephei.QL.Currencies.IITLCurrency_Factory 
          let JPYCurrency = new Cephei.QL.Currencies.CJPYCurrency_Factory () :> Cephei.QL.Currencies.IJPYCurrency_Factory 
          let KRWCurrency = new Cephei.QL.Currencies.CKRWCurrency_Factory () :> Cephei.QL.Currencies.IKRWCurrency_Factory 
          let KWDCurrency = new Cephei.QL.Currencies.CKWDCurrency_Factory () :> Cephei.QL.Currencies.IKWDCurrency_Factory 
          let LTLCurrency = new Cephei.QL.Currencies.CLTLCurrency_Factory () :> Cephei.QL.Currencies.ILTLCurrency_Factory 
          let LUFCurrency = new Cephei.QL.Currencies.CLUFCurrency_Factory () :> Cephei.QL.Currencies.ILUFCurrency_Factory 
          let LVLCurrency = new Cephei.QL.Currencies.CLVLCurrency_Factory () :> Cephei.QL.Currencies.ILVLCurrency_Factory 
          let MTLCurrency = new Cephei.QL.Currencies.CMTLCurrency_Factory () :> Cephei.QL.Currencies.IMTLCurrency_Factory 
          let MXNCurrency = new Cephei.QL.Currencies.CMXNCurrency_Factory () :> Cephei.QL.Currencies.IMXNCurrency_Factory 
          let NLGCurrency = new Cephei.QL.Currencies.CNLGCurrency_Factory () :> Cephei.QL.Currencies.INLGCurrency_Factory 
          let NOKCurrency = new Cephei.QL.Currencies.CNOKCurrency_Factory () :> Cephei.QL.Currencies.INOKCurrency_Factory 
          let NPRCurrency = new Cephei.QL.Currencies.CNPRCurrency_Factory () :> Cephei.QL.Currencies.INPRCurrency_Factory 
          let NZDCurrency = new Cephei.QL.Currencies.CNZDCurrency_Factory () :> Cephei.QL.Currencies.INZDCurrency_Factory 
          let PEHCurrency = new Cephei.QL.Currencies.CPEHCurrency_Factory () :> Cephei.QL.Currencies.IPEHCurrency_Factory 
          let PEICurrency = new Cephei.QL.Currencies.CPEICurrency_Factory () :> Cephei.QL.Currencies.IPEICurrency_Factory 
          let PENCurrency = new Cephei.QL.Currencies.CPENCurrency_Factory () :> Cephei.QL.Currencies.IPENCurrency_Factory 
          let PKRCurrency = new Cephei.QL.Currencies.CPKRCurrency_Factory () :> Cephei.QL.Currencies.IPKRCurrency_Factory 
          let PLNCurrency = new Cephei.QL.Currencies.CPLNCurrency_Factory () :> Cephei.QL.Currencies.IPLNCurrency_Factory 
          let PTECurrency = new Cephei.QL.Currencies.CPTECurrency_Factory () :> Cephei.QL.Currencies.IPTECurrency_Factory 
          let ROLCurrency = new Cephei.QL.Currencies.CROLCurrency_Factory () :> Cephei.QL.Currencies.IROLCurrency_Factory 
          let RONCurrency = new Cephei.QL.Currencies.CRONCurrency_Factory () :> Cephei.QL.Currencies.IRONCurrency_Factory 
          let SARCurrency = new Cephei.QL.Currencies.CSARCurrency_Factory () :> Cephei.QL.Currencies.ISARCurrency_Factory 
          let SEKCurrency = new Cephei.QL.Currencies.CSEKCurrency_Factory () :> Cephei.QL.Currencies.ISEKCurrency_Factory 
          let SGDCurrency = new Cephei.QL.Currencies.CSGDCurrency_Factory () :> Cephei.QL.Currencies.ISGDCurrency_Factory 
          let SITCurrency = new Cephei.QL.Currencies.CSITCurrency_Factory () :> Cephei.QL.Currencies.ISITCurrency_Factory 
          let SKKCurrency = new Cephei.QL.Currencies.CSKKCurrency_Factory () :> Cephei.QL.Currencies.ISKKCurrency_Factory 
          let THBCurrency = new Cephei.QL.Currencies.CTHBCurrency_Factory () :> Cephei.QL.Currencies.ITHBCurrency_Factory 
          let TRLCurrency = new Cephei.QL.Currencies.CTRLCurrency_Factory () :> Cephei.QL.Currencies.ITRLCurrency_Factory 
          let TRYCurrency = new Cephei.QL.Currencies.CTRYCurrency_Factory () :> Cephei.QL.Currencies.ITRYCurrency_Factory 
          let TTDCurrency = new Cephei.QL.Currencies.CTTDCurrency_Factory () :> Cephei.QL.Currencies.ITTDCurrency_Factory 
          let TWDCurrency = new Cephei.QL.Currencies.CTWDCurrency_Factory () :> Cephei.QL.Currencies.ITWDCurrency_Factory 
          let USDCurrency = new Cephei.QL.Currencies.CUSDCurrency_Factory () :> Cephei.QL.Currencies.IUSDCurrency_Factory 
          let VEBCurrency = new Cephei.QL.Currencies.CVEBCurrency_Factory () :> Cephei.QL.Currencies.IVEBCurrency_Factory 
          let ZARCurrency = new Cephei.QL.Currencies.CZARCurrency_Factory () :> Cephei.QL.Currencies.IZARCurrency_Factory 
        end

      module Experimental =
        begin
          let ConvertibleBond = new Cephei.QL.Experimental.CConvertibleBond_Factory () :> Cephei.QL.Experimental.IConvertibleBond_Factory 
          let ConvertibleFixedCouponBond = new Cephei.QL.Experimental.CConvertibleFixedCouponBond_Factory () :> Cephei.QL.Experimental.IConvertibleFixedCouponBond_Factory 
          let ConvertibleFloatingRateBond = new Cephei.QL.Experimental.CConvertibleFloatingRateBond_Factory () :> Cephei.QL.Experimental.IConvertibleFloatingRateBond_Factory 
          let ConvertibleZeroCouponBond = new Cephei.QL.Experimental.CConvertibleZeroCouponBond_Factory () :> Cephei.QL.Experimental.IConvertibleZeroCouponBond_Factory 
          let DiscretizedConvertible = new Cephei.QL.Experimental.CDiscretizedConvertible_Factory () :> Cephei.QL.Experimental.IDiscretizedConvertible_Factory 
          let EverestMultiPathPricer = new Cephei.QL.Experimental.CEverestMultiPathPricer_Factory () :> Cephei.QL.Experimental.IEverestMultiPathPricer_Factory 
          let EverestOption = new Cephei.QL.Experimental.CEverestOption_Factory () :> Cephei.QL.Experimental.IEverestOption_Factory 
          let HimalayaMultiPathPricer = new Cephei.QL.Experimental.CHimalayaMultiPathPricer_Factory () :> Cephei.QL.Experimental.IHimalayaMultiPathPricer_Factory 
          let HimalayaOption = new Cephei.QL.Experimental.CHimalayaOption_Factory () :> Cephei.QL.Experimental.IHimalayaOption_Factory 
          let PagodaMultiPathPricer = new Cephei.QL.Experimental.CPagodaMultiPathPricer_Factory () :> Cephei.QL.Experimental.IPagodaMultiPathPricer_Factory 
          let PagodaOption = new Cephei.QL.Experimental.CPagodaOption_Factory () :> Cephei.QL.Experimental.IPagodaOption_Factory 
          let SoftCallability = new Cephei.QL.Experimental.CSoftCallability_Factory () :> Cephei.QL.Experimental.ISoftCallability_Factory 

          module Amortizingbonds =
            begin
              let AmortizingCmsRateBond = new Cephei.QL.Experimental.Amortizingbonds.CAmortizingCmsRateBond_Factory () :> Cephei.QL.Experimental.Amortizingbonds.IAmortizingCmsRateBond_Factory 
              let AmortizingFixedRateBond = new Cephei.QL.Experimental.Amortizingbonds.CAmortizingFixedRateBond_Factory () :> Cephei.QL.Experimental.Amortizingbonds.IAmortizingFixedRateBond_Factory 
              let AmortizingFloatingRateBond = new Cephei.QL.Experimental.Amortizingbonds.CAmortizingFloatingRateBond_Factory () :> Cephei.QL.Experimental.Amortizingbonds.IAmortizingFloatingRateBond_Factory 
            end

          module Barrieroption =
            begin
              let PerturbativeBarrierOptionEngine = new Cephei.QL.Experimental.Barrieroption.CPerturbativeBarrierOptionEngine_Factory () :> Cephei.QL.Experimental.Barrieroption.IPerturbativeBarrierOptionEngine_Factory 
            end

          module Callablebonds =
            begin
              let BlackCallableFixedRateBondEngine = new Cephei.QL.Experimental.Callablebonds.CBlackCallableFixedRateBondEngine_Factory () :> Cephei.QL.Experimental.Callablebonds.IBlackCallableFixedRateBondEngine_Factory 
              let BlackCallableZeroCouponBondEngine = new Cephei.QL.Experimental.Callablebonds.CBlackCallableZeroCouponBondEngine_Factory () :> Cephei.QL.Experimental.Callablebonds.IBlackCallableZeroCouponBondEngine_Factory 
              let CallableBond = new Cephei.QL.Experimental.Callablebonds.CCallableBond_Factory () :> Cephei.QL.Experimental.Callablebonds.ICallableBond_Factory 
              let CallableBondConstantVolatility = new Cephei.QL.Experimental.Callablebonds.CCallableBondConstantVolatility_Factory () :> Cephei.QL.Experimental.Callablebonds.ICallableBondConstantVolatility_Factory 
              let CallableBondVolatilityStructure = new Cephei.QL.Experimental.Callablebonds.CCallableBondVolatilityStructure_Factory () :> Cephei.QL.Experimental.Callablebonds.ICallableBondVolatilityStructure_Factory 
              let CallableFixedRateBond = new Cephei.QL.Experimental.Callablebonds.CCallableFixedRateBond_Factory () :> Cephei.QL.Experimental.Callablebonds.ICallableFixedRateBond_Factory 
              let CallableZeroCouponBond = new Cephei.QL.Experimental.Callablebonds.CCallableZeroCouponBond_Factory () :> Cephei.QL.Experimental.Callablebonds.ICallableZeroCouponBond_Factory 
              let DiscretizedCallableFixedRateBond = new Cephei.QL.Experimental.Callablebonds.CDiscretizedCallableFixedRateBond_Factory () :> Cephei.QL.Experimental.Callablebonds.IDiscretizedCallableFixedRateBond_Factory 
              let TreeCallableFixedRateBondEngine = new Cephei.QL.Experimental.Callablebonds.CTreeCallableFixedRateBondEngine_Factory () :> Cephei.QL.Experimental.Callablebonds.ITreeCallableFixedRateBondEngine_Factory 
              let TreeCallableZeroCouponBondEngine = new Cephei.QL.Experimental.Callablebonds.CTreeCallableZeroCouponBondEngine_Factory () :> Cephei.QL.Experimental.Callablebonds.ITreeCallableZeroCouponBondEngine_Factory 
            end

          module Commodities =
            begin
              let BarrelUnitOfMeasure = new Cephei.QL.Experimental.Commodities.CBarrelUnitOfMeasure_Factory () :> Cephei.QL.Experimental.Commodities.IBarrelUnitOfMeasure_Factory 
              let Commodity = new Cephei.QL.Experimental.Commodities.CCommodity_Factory () :> Cephei.QL.Experimental.Commodities.ICommodity_Factory 
              let CommodityCashFlow = new Cephei.QL.Experimental.Commodities.CCommodityCashFlow_Factory () :> Cephei.QL.Experimental.Commodities.ICommodityCashFlow_Factory 
              let CommodityCurve = new Cephei.QL.Experimental.Commodities.CCommodityCurve_Factory () :> Cephei.QL.Experimental.Commodities.ICommodityCurve_Factory 
              let CommodityIndex = new Cephei.QL.Experimental.Commodities.CCommodityIndex_Factory () :> Cephei.QL.Experimental.Commodities.ICommodityIndex_Factory 
              let CommodityPricingHelper = new Cephei.QL.Experimental.Commodities.CCommodityPricingHelper_Factory () :> Cephei.QL.Experimental.Commodities.ICommodityPricingHelper_Factory 
              let CommoditySettings = new Cephei.QL.Experimental.Commodities.CCommoditySettings_Factory () :> Cephei.QL.Experimental.Commodities.ICommoditySettings_Factory 
              let CommodityType = new Cephei.QL.Experimental.Commodities.CCommodityType_Factory () :> Cephei.QL.Experimental.Commodities.ICommodityType_Factory 
              let CommodityUnitCost = new Cephei.QL.Experimental.Commodities.CCommodityUnitCost_Factory () :> Cephei.QL.Experimental.Commodities.ICommodityUnitCost_Factory 
              let DateInterval = new Cephei.QL.Experimental.Commodities.CDateInterval_Factory () :> Cephei.QL.Experimental.Commodities.IDateInterval_Factory 
              let EnergyBasisSwap = new Cephei.QL.Experimental.Commodities.CEnergyBasisSwap_Factory () :> Cephei.QL.Experimental.Commodities.IEnergyBasisSwap_Factory 
              let EnergyCommodity = new Cephei.QL.Experimental.Commodities.CEnergyCommodity_Factory () :> Cephei.QL.Experimental.Commodities.IEnergyCommodity_Factory 
              let EnergyDailyPosition = new Cephei.QL.Experimental.Commodities.CEnergyDailyPosition_Factory () :> Cephei.QL.Experimental.Commodities.IEnergyDailyPosition_Factory 
              let EnergyFuture = new Cephei.QL.Experimental.Commodities.CEnergyFuture_Factory () :> Cephei.QL.Experimental.Commodities.IEnergyFuture_Factory 
              let EnergySwap = new Cephei.QL.Experimental.Commodities.CEnergySwap_Factory () :> Cephei.QL.Experimental.Commodities.IEnergySwap_Factory 
              let EnergyVanillaSwap = new Cephei.QL.Experimental.Commodities.CEnergyVanillaSwap_Factory () :> Cephei.QL.Experimental.Commodities.IEnergyVanillaSwap_Factory 
              let ExchangeContract = new Cephei.QL.Experimental.Commodities.CExchangeContract_Factory () :> Cephei.QL.Experimental.Commodities.IExchangeContract_Factory 
              let GallonUnitOfMeasure = new Cephei.QL.Experimental.Commodities.CGallonUnitOfMeasure_Factory () :> Cephei.QL.Experimental.Commodities.IGallonUnitOfMeasure_Factory 
              let KilolitreUnitOfMeasure = new Cephei.QL.Experimental.Commodities.CKilolitreUnitOfMeasure_Factory () :> Cephei.QL.Experimental.Commodities.IKilolitreUnitOfMeasure_Factory 
              let LitreUnitOfMeasure = new Cephei.QL.Experimental.Commodities.CLitreUnitOfMeasure_Factory () :> Cephei.QL.Experimental.Commodities.ILitreUnitOfMeasure_Factory 
              let LotUnitOfMeasure = new Cephei.QL.Experimental.Commodities.CLotUnitOfMeasure_Factory () :> Cephei.QL.Experimental.Commodities.ILotUnitOfMeasure_Factory 
              let MBUnitOfMeasure = new Cephei.QL.Experimental.Commodities.CMBUnitOfMeasure_Factory () :> Cephei.QL.Experimental.Commodities.IMBUnitOfMeasure_Factory 
              let MTUnitOfMeasure = new Cephei.QL.Experimental.Commodities.CMTUnitOfMeasure_Factory () :> Cephei.QL.Experimental.Commodities.IMTUnitOfMeasure_Factory 
              let NullCommodityType = new Cephei.QL.Experimental.Commodities.CNullCommodityType_Factory () :> Cephei.QL.Experimental.Commodities.INullCommodityType_Factory 
              let PaymentTerm = new Cephei.QL.Experimental.Commodities.CPaymentTerm_Factory () :> Cephei.QL.Experimental.Commodities.IPaymentTerm_Factory 
              let PricingError = new Cephei.QL.Experimental.Commodities.CPricingError_Factory () :> Cephei.QL.Experimental.Commodities.IPricingError_Factory 
              let PricingPeriod = new Cephei.QL.Experimental.Commodities.CPricingPeriod_Factory () :> Cephei.QL.Experimental.Commodities.IPricingPeriod_Factory 
              let Quantity = new Cephei.QL.Experimental.Commodities.CQuantity_Factory () :> Cephei.QL.Experimental.Commodities.IQuantity_Factory 
              let TokyoKilolitreUnitOfMeasure = new Cephei.QL.Experimental.Commodities.CTokyoKilolitreUnitOfMeasure_Factory () :> Cephei.QL.Experimental.Commodities.ITokyoKilolitreUnitOfMeasure_Factory 
              let UnitOfMeasure = new Cephei.QL.Experimental.Commodities.CUnitOfMeasure_Factory () :> Cephei.QL.Experimental.Commodities.IUnitOfMeasure_Factory 
              let UnitOfMeasureConversion = new Cephei.QL.Experimental.Commodities.CUnitOfMeasureConversion_Factory () :> Cephei.QL.Experimental.Commodities.IUnitOfMeasureConversion_Factory 
              let UnitOfMeasureConversionManager = new Cephei.QL.Experimental.Commodities.CUnitOfMeasureConversionManager_Factory () :> Cephei.QL.Experimental.Commodities.IUnitOfMeasureConversionManager_Factory 
            end

          module Compoundoption =
            begin
              let AnalyticCompoundOptionEngine = new Cephei.QL.Experimental.Compoundoption.CAnalyticCompoundOptionEngine_Factory () :> Cephei.QL.Experimental.Compoundoption.IAnalyticCompoundOptionEngine_Factory 
              let CompoundOption = new Cephei.QL.Experimental.Compoundoption.CCompoundOption_Factory () :> Cephei.QL.Experimental.Compoundoption.ICompoundOption_Factory 
              let ImpliedSpotHelper = new Cephei.QL.Experimental.Compoundoption.CImpliedSpotHelper_Factory () :> Cephei.QL.Experimental.Compoundoption.IImpliedSpotHelper_Factory 
            end

          module Coupons =
            begin
              let AveragingRatePricer = new Cephei.QL.Experimental.Coupons.CAveragingRatePricer_Factory () :> Cephei.QL.Experimental.Coupons.IAveragingRatePricer_Factory 
              let BlackIborQuantoCouponPricer = new Cephei.QL.Experimental.Coupons.CBlackIborQuantoCouponPricer_Factory () :> Cephei.QL.Experimental.Coupons.IBlackIborQuantoCouponPricer_Factory 
              let CompoundingRatePricer = new Cephei.QL.Experimental.Coupons.CCompoundingRatePricer_Factory () :> Cephei.QL.Experimental.Coupons.ICompoundingRatePricer_Factory 
              let SubPeriodsCoupon = new Cephei.QL.Experimental.Coupons.CSubPeriodsCoupon_Factory () :> Cephei.QL.Experimental.Coupons.ISubPeriodsCoupon_Factory 
              let SubPeriodsPricer = new Cephei.QL.Experimental.Coupons.CSubPeriodsPricer_Factory () :> Cephei.QL.Experimental.Coupons.ISubPeriodsPricer_Factory 
            end

          module Credit =
            begin
              let AssetSwapHelper = new Cephei.QL.Experimental.Credit.CAssetSwapHelper_Factory () :> Cephei.QL.Experimental.Credit.IAssetSwapHelper_Factory 
              let AtomicDefault = new Cephei.QL.Experimental.Credit.CAtomicDefault_Factory () :> Cephei.QL.Experimental.Credit.IAtomicDefault_Factory 
              let BankruptcyEvent = new Cephei.QL.Experimental.Credit.CBankruptcyEvent_Factory () :> Cephei.QL.Experimental.Credit.IBankruptcyEvent_Factory 
              let Basket = new Cephei.QL.Experimental.Credit.CBasket_Factory () :> Cephei.QL.Experimental.Credit.IBasket_Factory 
              let BinomialProbabilityOfAtLeastNEvents = new Cephei.QL.Experimental.Credit.CBinomialProbabilityOfAtLeastNEvents_Factory () :> Cephei.QL.Experimental.Credit.IBinomialProbabilityOfAtLeastNEvents_Factory 
              let BlackCdsOptionEngine = new Cephei.QL.Experimental.Credit.CBlackCdsOptionEngine_Factory () :> Cephei.QL.Experimental.Credit.IBlackCdsOptionEngine_Factory 
              let CDO = new Cephei.QL.Experimental.Credit.CCDO_Factory () :> Cephei.QL.Experimental.Credit.ICDO_Factory 
              let CdsOption = new Cephei.QL.Experimental.Credit.CCdsOption_Factory () :> Cephei.QL.Experimental.Credit.ICdsOption_Factory 
              let ConstantRecoveryModel = new Cephei.QL.Experimental.Credit.CConstantRecoveryModel_Factory () :> Cephei.QL.Experimental.Credit.IConstantRecoveryModel_Factory 
              let DefaultEvent = new Cephei.QL.Experimental.Credit.CDefaultEvent_Factory () :> Cephei.QL.Experimental.Credit.IDefaultEvent_Factory 
              let DefaultProbKey = new Cephei.QL.Experimental.Credit.CDefaultProbKey_Factory () :> Cephei.QL.Experimental.Credit.IDefaultProbKey_Factory 
              let DefaultType = new Cephei.QL.Experimental.Credit.CDefaultType_Factory () :> Cephei.QL.Experimental.Credit.IDefaultType_Factory 
              let Distribution = new Cephei.QL.Experimental.Credit.CDistribution_Factory () :> Cephei.QL.Experimental.Credit.IDistribution_Factory 
              let FactorSpreadedHazardRateCurve = new Cephei.QL.Experimental.Credit.CFactorSpreadedHazardRateCurve_Factory () :> Cephei.QL.Experimental.Credit.IFactorSpreadedHazardRateCurve_Factory 
              let FailureToPay = new Cephei.QL.Experimental.Credit.CFailureToPay_Factory () :> Cephei.QL.Experimental.Credit.IFailureToPay_Factory 
              let FailureToPayEvent = new Cephei.QL.Experimental.Credit.CFailureToPayEvent_Factory () :> Cephei.QL.Experimental.Credit.IFailureToPayEvent_Factory 
              let GaussianRandomDefaultModel = new Cephei.QL.Experimental.Credit.CGaussianRandomDefaultModel_Factory () :> Cephei.QL.Experimental.Credit.IGaussianRandomDefaultModel_Factory 
              let IntegralCDOEngine = new Cephei.QL.Experimental.Credit.CIntegralCDOEngine_Factory () :> Cephei.QL.Experimental.Credit.IIntegralCDOEngine_Factory 
              let Issuer = new Cephei.QL.Experimental.Credit.CIssuer_Factory () :> Cephei.QL.Experimental.Credit.IIssuer_Factory 
              let Loss = new Cephei.QL.Experimental.Credit.CLoss_Factory () :> Cephei.QL.Experimental.Credit.ILoss_Factory 
              let LossDist = new Cephei.QL.Experimental.Credit.CLossDist_Factory () :> Cephei.QL.Experimental.Credit.ILossDist_Factory 
              let LossDistBinomial = new Cephei.QL.Experimental.Credit.CLossDistBinomial_Factory () :> Cephei.QL.Experimental.Credit.ILossDistBinomial_Factory 
              let LossDistBucketing = new Cephei.QL.Experimental.Credit.CLossDistBucketing_Factory () :> Cephei.QL.Experimental.Credit.ILossDistBucketing_Factory 
              let LossDistHomogeneous = new Cephei.QL.Experimental.Credit.CLossDistHomogeneous_Factory () :> Cephei.QL.Experimental.Credit.ILossDistHomogeneous_Factory 
              let LossDistMonteCarlo = new Cephei.QL.Experimental.Credit.CLossDistMonteCarlo_Factory () :> Cephei.QL.Experimental.Credit.ILossDistMonteCarlo_Factory 
              let ManipulateDistribution = new Cephei.QL.Experimental.Credit.CManipulateDistribution_Factory () :> Cephei.QL.Experimental.Credit.IManipulateDistribution_Factory 
              let MidPointCDOEngine = new Cephei.QL.Experimental.Credit.CMidPointCDOEngine_Factory () :> Cephei.QL.Experimental.Credit.IMidPointCDOEngine_Factory 
              let MonteCarloCDOEngine1 = new Cephei.QL.Experimental.Credit.CMonteCarloCDOEngine1_Factory () :> Cephei.QL.Experimental.Credit.IMonteCarloCDOEngine1_Factory 
              let MonteCarloCDOEngine2 = new Cephei.QL.Experimental.Credit.CMonteCarloCDOEngine2_Factory () :> Cephei.QL.Experimental.Credit.IMonteCarloCDOEngine2_Factory 
              let NorthAmericaCorpDefaultKey = new Cephei.QL.Experimental.Credit.CNorthAmericaCorpDefaultKey_Factory () :> Cephei.QL.Experimental.Credit.INorthAmericaCorpDefaultKey_Factory 
              let NthToDefault = new Cephei.QL.Experimental.Credit.CNthToDefault_Factory () :> Cephei.QL.Experimental.Credit.INthToDefault_Factory 
              let OneFactorCopula = new Cephei.QL.Experimental.Credit.COneFactorCopula_Factory () :> Cephei.QL.Experimental.Credit.IOneFactorCopula_Factory 
              let OneFactorGaussianCopula = new Cephei.QL.Experimental.Credit.COneFactorGaussianCopula_Factory () :> Cephei.QL.Experimental.Credit.IOneFactorGaussianCopula_Factory 
              let OneFactorGaussianStudentCopula = new Cephei.QL.Experimental.Credit.COneFactorGaussianStudentCopula_Factory () :> Cephei.QL.Experimental.Credit.IOneFactorGaussianStudentCopula_Factory 
              let OneFactorStudentCopula = new Cephei.QL.Experimental.Credit.COneFactorStudentCopula_Factory () :> Cephei.QL.Experimental.Credit.IOneFactorStudentCopula_Factory 
              let OneFactorStudentGaussianCopula = new Cephei.QL.Experimental.Credit.COneFactorStudentGaussianCopula_Factory () :> Cephei.QL.Experimental.Credit.IOneFactorStudentGaussianCopula_Factory 
              let Pool = new Cephei.QL.Experimental.Credit.CPool_Factory () :> Cephei.QL.Experimental.Credit.IPool_Factory 
              let ProbabilityOfAtLeastNEvents = new Cephei.QL.Experimental.Credit.CProbabilityOfAtLeastNEvents_Factory () :> Cephei.QL.Experimental.Credit.IProbabilityOfAtLeastNEvents_Factory 
              let ProbabilityOfNEvents = new Cephei.QL.Experimental.Credit.CProbabilityOfNEvents_Factory () :> Cephei.QL.Experimental.Credit.IProbabilityOfNEvents_Factory 
              let RandomDefaultModel = new Cephei.QL.Experimental.Credit.CRandomDefaultModel_Factory () :> Cephei.QL.Experimental.Credit.IRandomDefaultModel_Factory 
              let RecoveryRateModel = new Cephei.QL.Experimental.Credit.CRecoveryRateModel_Factory () :> Cephei.QL.Experimental.Credit.IRecoveryRateModel_Factory 
              let Restructuring = new Cephei.QL.Experimental.Credit.CRestructuring_Factory () :> Cephei.QL.Experimental.Credit.IRestructuring_Factory 
              let RiskyAssetSwap = new Cephei.QL.Experimental.Credit.CRiskyAssetSwap_Factory () :> Cephei.QL.Experimental.Credit.IRiskyAssetSwap_Factory 
              let RiskyAssetSwapOption = new Cephei.QL.Experimental.Credit.CRiskyAssetSwapOption_Factory () :> Cephei.QL.Experimental.Credit.IRiskyAssetSwapOption_Factory 
              let RiskyBond = new Cephei.QL.Experimental.Credit.CRiskyBond_Factory () :> Cephei.QL.Experimental.Credit.IRiskyBond_Factory 
              let RiskyFixedBond = new Cephei.QL.Experimental.Credit.CRiskyFixedBond_Factory () :> Cephei.QL.Experimental.Credit.IRiskyFixedBond_Factory 
              let RiskyFloatingBond = new Cephei.QL.Experimental.Credit.CRiskyFloatingBond_Factory () :> Cephei.QL.Experimental.Credit.IRiskyFloatingBond_Factory 
              let SpreadedHazardRateCurve = new Cephei.QL.Experimental.Credit.CSpreadedHazardRateCurve_Factory () :> Cephei.QL.Experimental.Credit.ISpreadedHazardRateCurve_Factory 
              let SyntheticCDO = new Cephei.QL.Experimental.Credit.CSyntheticCDO_Factory () :> Cephei.QL.Experimental.Credit.ISyntheticCDO_Factory 
            end

          module Finitedifferences =
            begin
              let BiCGstab = new Cephei.QL.Experimental.Finitedifferences.CBiCGstab_Factory () :> Cephei.QL.Experimental.Finitedifferences.IBiCGstab_Factory 
              let BiCGStabResult = new Cephei.QL.Experimental.Finitedifferences.CBiCGStabResult_Factory () :> Cephei.QL.Experimental.Finitedifferences.IBiCGStabResult_Factory 
              let Concentrating1dMesher = new Cephei.QL.Experimental.Finitedifferences.CConcentrating1dMesher_Factory () :> Cephei.QL.Experimental.Finitedifferences.IConcentrating1dMesher_Factory 
              let CraigSneydScheme = new Cephei.QL.Experimental.Finitedifferences.CCraigSneydScheme_Factory () :> Cephei.QL.Experimental.Finitedifferences.ICraigSneydScheme_Factory 
              let DividendBarrierOption = new Cephei.QL.Experimental.Finitedifferences.CDividendBarrierOption_Factory () :> Cephei.QL.Experimental.Finitedifferences.IDividendBarrierOption_Factory 
              let DouglasScheme = new Cephei.QL.Experimental.Finitedifferences.CDouglasScheme_Factory () :> Cephei.QL.Experimental.Finitedifferences.IDouglasScheme_Factory 
              let ExplicitEulerScheme = new Cephei.QL.Experimental.Finitedifferences.CExplicitEulerScheme_Factory () :> Cephei.QL.Experimental.Finitedifferences.IExplicitEulerScheme_Factory 
              let FdBlackScholesAsianEngine = new Cephei.QL.Experimental.Finitedifferences.CFdBlackScholesAsianEngine_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdBlackScholesAsianEngine_Factory 
              let FdBlackScholesBarrierEngine = new Cephei.QL.Experimental.Finitedifferences.CFdBlackScholesBarrierEngine_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdBlackScholesBarrierEngine_Factory 
              let FdBlackScholesRebateEngine = new Cephei.QL.Experimental.Finitedifferences.CFdBlackScholesRebateEngine_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdBlackScholesRebateEngine_Factory 
              let FdBlackScholesVanillaEngine = new Cephei.QL.Experimental.Finitedifferences.CFdBlackScholesVanillaEngine_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdBlackScholesVanillaEngine_Factory 
              let FdHestonBarrierEngine = new Cephei.QL.Experimental.Finitedifferences.CFdHestonBarrierEngine_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdHestonBarrierEngine_Factory 
              let FdHestonHullWhiteVanillaEngine = new Cephei.QL.Experimental.Finitedifferences.CFdHestonHullWhiteVanillaEngine_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdHestonHullWhiteVanillaEngine_Factory 
              let FdHestonRebateEngine = new Cephei.QL.Experimental.Finitedifferences.CFdHestonRebateEngine_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdHestonRebateEngine_Factory 
              let FdHestonVanillaEngine = new Cephei.QL.Experimental.Finitedifferences.CFdHestonVanillaEngine_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdHestonVanillaEngine_Factory 
              let Fdm1dMesher = new Cephei.QL.Experimental.Finitedifferences.CFdm1dMesher_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdm1dMesher_Factory 
              let FdmAmericanStepCondition = new Cephei.QL.Experimental.Finitedifferences.CFdmAmericanStepCondition_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdmAmericanStepCondition_Factory 
              let FdmArithmeticAverageCondition = new Cephei.QL.Experimental.Finitedifferences.CFdmArithmeticAverageCondition_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdmArithmeticAverageCondition_Factory 
              let FdmBackwardSolver = new Cephei.QL.Experimental.Finitedifferences.CFdmBackwardSolver_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdmBackwardSolver_Factory 
              let FdmBlackScholesMesher = new Cephei.QL.Experimental.Finitedifferences.CFdmBlackScholesMesher_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdmBlackScholesMesher_Factory 
              let FdmBlackScholesMultiStrikeMesher = new Cephei.QL.Experimental.Finitedifferences.CFdmBlackScholesMultiStrikeMesher_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdmBlackScholesMultiStrikeMesher_Factory 
              let FdmBlackScholesOp = new Cephei.QL.Experimental.Finitedifferences.CFdmBlackScholesOp_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdmBlackScholesOp_Factory 
              let FdmBlackScholesSolver = new Cephei.QL.Experimental.Finitedifferences.CFdmBlackScholesSolver_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdmBlackScholesSolver_Factory 
              let FdmDividendHandler = new Cephei.QL.Experimental.Finitedifferences.CFdmDividendHandler_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdmDividendHandler_Factory 
              let FdmHestonEquityPart = new Cephei.QL.Experimental.Finitedifferences.CFdmHestonEquityPart_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdmHestonEquityPart_Factory 
              let FdmHestonHullWhiteEquityPart = new Cephei.QL.Experimental.Finitedifferences.CFdmHestonHullWhiteEquityPart_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdmHestonHullWhiteEquityPart_Factory 
              let FdmHestonHullWhiteOp = new Cephei.QL.Experimental.Finitedifferences.CFdmHestonHullWhiteOp_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdmHestonHullWhiteOp_Factory 
              let FdmHestonHullWhiteRatesPart = new Cephei.QL.Experimental.Finitedifferences.CFdmHestonHullWhiteRatesPart_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdmHestonHullWhiteRatesPart_Factory 
              let FdmHestonHullWhiteSolver = new Cephei.QL.Experimental.Finitedifferences.CFdmHestonHullWhiteSolver_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdmHestonHullWhiteSolver_Factory 
              let FdmHestonHullWhiteVariancePart = new Cephei.QL.Experimental.Finitedifferences.CFdmHestonHullWhiteVariancePart_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdmHestonHullWhiteVariancePart_Factory 
              let FdmHestonOp = new Cephei.QL.Experimental.Finitedifferences.CFdmHestonOp_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdmHestonOp_Factory 
              let FdmHestonSolver = new Cephei.QL.Experimental.Finitedifferences.CFdmHestonSolver_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdmHestonSolver_Factory 
              let FdmHestonVarianceMesher = new Cephei.QL.Experimental.Finitedifferences.CFdmHestonVarianceMesher_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdmHestonVarianceMesher_Factory 
              let FdmHestonVariancePart = new Cephei.QL.Experimental.Finitedifferences.CFdmHestonVariancePart_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdmHestonVariancePart_Factory 
              let FdmHullWhiteMesher = new Cephei.QL.Experimental.Finitedifferences.CFdmHullWhiteMesher_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdmHullWhiteMesher_Factory 
              let FdmInnerValueCalculator = new Cephei.QL.Experimental.Finitedifferences.CFdmInnerValueCalculator_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdmInnerValueCalculator_Factory 
              let FdmLinearOp = new Cephei.QL.Experimental.Finitedifferences.CFdmLinearOp_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdmLinearOp_Factory 
              let FdmLinearOpComposite = new Cephei.QL.Experimental.Finitedifferences.CFdmLinearOpComposite_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdmLinearOpComposite_Factory 
              let FdmLinearOpIterator = new Cephei.QL.Experimental.Finitedifferences.CFdmLinearOpIterator_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdmLinearOpIterator_Factory 
              let FdmLinearOpLayout = new Cephei.QL.Experimental.Finitedifferences.CFdmLinearOpLayout_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdmLinearOpLayout_Factory 
              let FdmLogInnerValue = new Cephei.QL.Experimental.Finitedifferences.CFdmLogInnerValue_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdmLogInnerValue_Factory 
              let FdmMesher = new Cephei.QL.Experimental.Finitedifferences.CFdmMesher_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdmMesher_Factory 
              let FdmMesherComposite = new Cephei.QL.Experimental.Finitedifferences.CFdmMesherComposite_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdmMesherComposite_Factory 
              let FdmQuantoHelper = new Cephei.QL.Experimental.Finitedifferences.CFdmQuantoHelper_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdmQuantoHelper_Factory 
              let FdmSimple2dBSSolver = new Cephei.QL.Experimental.Finitedifferences.CFdmSimple2dBSSolver_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdmSimple2dBSSolver_Factory 
              let FdmSnapshotCondition = new Cephei.QL.Experimental.Finitedifferences.CFdmSnapshotCondition_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdmSnapshotCondition_Factory 
              let FdmStepConditionComposite = new Cephei.QL.Experimental.Finitedifferences.CFdmStepConditionComposite_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFdmStepConditionComposite_Factory 
              let FirstDerivativeOp = new Cephei.QL.Experimental.Finitedifferences.CFirstDerivativeOp_Factory () :> Cephei.QL.Experimental.Finitedifferences.IFirstDerivativeOp_Factory 
              let HundsdorferScheme = new Cephei.QL.Experimental.Finitedifferences.CHundsdorferScheme_Factory () :> Cephei.QL.Experimental.Finitedifferences.IHundsdorferScheme_Factory 
              let ImplicitEulerScheme = new Cephei.QL.Experimental.Finitedifferences.CImplicitEulerScheme_Factory () :> Cephei.QL.Experimental.Finitedifferences.IImplicitEulerScheme_Factory 
              let ModifiedCraigSneydScheme = new Cephei.QL.Experimental.Finitedifferences.CModifiedCraigSneydScheme_Factory () :> Cephei.QL.Experimental.Finitedifferences.IModifiedCraigSneydScheme_Factory 
              let NinePointLinearOp = new Cephei.QL.Experimental.Finitedifferences.CNinePointLinearOp_Factory () :> Cephei.QL.Experimental.Finitedifferences.INinePointLinearOp_Factory 
              let SecondDerivativeOp = new Cephei.QL.Experimental.Finitedifferences.CSecondDerivativeOp_Factory () :> Cephei.QL.Experimental.Finitedifferences.ISecondDerivativeOp_Factory 
              let SecondOrderMixedDerivativeOp = new Cephei.QL.Experimental.Finitedifferences.CSecondOrderMixedDerivativeOp_Factory () :> Cephei.QL.Experimental.Finitedifferences.ISecondOrderMixedDerivativeOp_Factory 
              let SparseILUPreconditioner = new Cephei.QL.Experimental.Finitedifferences.CSparseILUPreconditioner_Factory () :> Cephei.QL.Experimental.Finitedifferences.ISparseILUPreconditioner_Factory 
              let TripleBandLinearOp = new Cephei.QL.Experimental.Finitedifferences.CTripleBandLinearOp_Factory () :> Cephei.QL.Experimental.Finitedifferences.ITripleBandLinearOp_Factory 
              let Uniform1dMesher = new Cephei.QL.Experimental.Finitedifferences.CUniform1dMesher_Factory () :> Cephei.QL.Experimental.Finitedifferences.IUniform1dMesher_Factory 
              let UniformGridMesher = new Cephei.QL.Experimental.Finitedifferences.CUniformGridMesher_Factory () :> Cephei.QL.Experimental.Finitedifferences.IUniformGridMesher_Factory 
            end

          module Inflation =
            begin
              let GenericCPI = new Cephei.QL.Experimental.Inflation.CGenericCPI_Factory () :> Cephei.QL.Experimental.Inflation.IGenericCPI_Factory 
              let GenericRegion = new Cephei.QL.Experimental.Inflation.CGenericRegion_Factory () :> Cephei.QL.Experimental.Inflation.IGenericRegion_Factory 
              let Polynomial = new Cephei.QL.Experimental.Inflation.CPolynomial_Factory () :> Cephei.QL.Experimental.Inflation.IPolynomial_Factory 
              let Polynomial2DSpline = new Cephei.QL.Experimental.Inflation.CPolynomial2DSpline_Factory () :> Cephei.QL.Experimental.Inflation.IPolynomial2DSpline_Factory 
              let YoYCapFloorTermPriceSurface = new Cephei.QL.Experimental.Inflation.CYoYCapFloorTermPriceSurface_Factory () :> Cephei.QL.Experimental.Inflation.IYoYCapFloorTermPriceSurface_Factory 
              let YoYInflationVolatilityTraits = new Cephei.QL.Experimental.Inflation.CYoYInflationVolatilityTraits_Factory () :> Cephei.QL.Experimental.Inflation.IYoYInflationVolatilityTraits_Factory 
              let YoYOptionletHelper = new Cephei.QL.Experimental.Inflation.CYoYOptionletHelper_Factory () :> Cephei.QL.Experimental.Inflation.IYoYOptionletHelper_Factory 
              let YoYOptionletStripper = new Cephei.QL.Experimental.Inflation.CYoYOptionletStripper_Factory () :> Cephei.QL.Experimental.Inflation.IYoYOptionletStripper_Factory 
              let YYGenericCPI = new Cephei.QL.Experimental.Inflation.CYYGenericCPI_Factory () :> Cephei.QL.Experimental.Inflation.IYYGenericCPI_Factory 
              let YYGenericCPIr = new Cephei.QL.Experimental.Inflation.CYYGenericCPIr_Factory () :> Cephei.QL.Experimental.Inflation.IYYGenericCPIr_Factory 
            end

          module Lattices =
            begin
              let ExtendedAdditiveEQPBinomialTree = new Cephei.QL.Experimental.Lattices.CExtendedAdditiveEQPBinomialTree_Factory () :> Cephei.QL.Experimental.Lattices.IExtendedAdditiveEQPBinomialTree_Factory 
              let ExtendedCoxRossRubinstein = new Cephei.QL.Experimental.Lattices.CExtendedCoxRossRubinstein_Factory () :> Cephei.QL.Experimental.Lattices.IExtendedCoxRossRubinstein_Factory 
              let ExtendedJarrowRudd = new Cephei.QL.Experimental.Lattices.CExtendedJarrowRudd_Factory () :> Cephei.QL.Experimental.Lattices.IExtendedJarrowRudd_Factory 
              let ExtendedJoshi4 = new Cephei.QL.Experimental.Lattices.CExtendedJoshi4_Factory () :> Cephei.QL.Experimental.Lattices.IExtendedJoshi4_Factory 
              let ExtendedLeisenReimer = new Cephei.QL.Experimental.Lattices.CExtendedLeisenReimer_Factory () :> Cephei.QL.Experimental.Lattices.IExtendedLeisenReimer_Factory 
              let ExtendedTian = new Cephei.QL.Experimental.Lattices.CExtendedTian_Factory () :> Cephei.QL.Experimental.Lattices.IExtendedTian_Factory 
              let ExtendedTrigeorgis = new Cephei.QL.Experimental.Lattices.CExtendedTrigeorgis_Factory () :> Cephei.QL.Experimental.Lattices.IExtendedTrigeorgis_Factory 
            end

          module Math =
            begin
              let FastFourierTransform = new Cephei.QL.Experimental.Math.CFastFourierTransform_Factory () :> Cephei.QL.Experimental.Math.IFastFourierTransform_Factory 
            end

          module Mcbasket =
            begin
              let AdaptedPathPayoff = new Cephei.QL.Experimental.Mcbasket.CAdaptedPathPayoff_Factory () :> Cephei.QL.Experimental.Mcbasket.IAdaptedPathPayoff_Factory 
              let EuropeanPathMultiPathPricer = new Cephei.QL.Experimental.Mcbasket.CEuropeanPathMultiPathPricer_Factory () :> Cephei.QL.Experimental.Mcbasket.IEuropeanPathMultiPathPricer_Factory 
              let LongstaffSchwartzMultiPathPricer = new Cephei.QL.Experimental.Mcbasket.CLongstaffSchwartzMultiPathPricer_Factory () :> Cephei.QL.Experimental.Mcbasket.ILongstaffSchwartzMultiPathPricer_Factory 
              let PathMultiAssetOption = new Cephei.QL.Experimental.Mcbasket.CPathMultiAssetOption_Factory () :> Cephei.QL.Experimental.Mcbasket.IPathMultiAssetOption_Factory 
              let PathPayoff = new Cephei.QL.Experimental.Mcbasket.CPathPayoff_Factory () :> Cephei.QL.Experimental.Mcbasket.IPathPayoff_Factory 
            end

          module Processes =
            begin
              let ExtendedBlackScholesMertonProcess = new Cephei.QL.Experimental.Processes.CExtendedBlackScholesMertonProcess_Factory () :> Cephei.QL.Experimental.Processes.IExtendedBlackScholesMertonProcess_Factory 
            end

          module Risk =
            begin
            end

          module Varianceoption =
            begin
              let IntegralHestonVarianceOptionEngine = new Cephei.QL.Experimental.Varianceoption.CIntegralHestonVarianceOptionEngine_Factory () :> Cephei.QL.Experimental.Varianceoption.IIntegralHestonVarianceOptionEngine_Factory 
              let VarianceOption = new Cephei.QL.Experimental.Varianceoption.CVarianceOption_Factory () :> Cephei.QL.Experimental.Varianceoption.IVarianceOption_Factory 
            end

          module Volatility =
            begin
              let AbcdAtmVolCurve = new Cephei.QL.Experimental.Volatility.CAbcdAtmVolCurve_Factory () :> Cephei.QL.Experimental.Volatility.IAbcdAtmVolCurve_Factory 
              let BlackAtmVolCurve = new Cephei.QL.Experimental.Volatility.CBlackAtmVolCurve_Factory () :> Cephei.QL.Experimental.Volatility.IBlackAtmVolCurve_Factory 
              let BlackVolSurface = new Cephei.QL.Experimental.Volatility.CBlackVolSurface_Factory () :> Cephei.QL.Experimental.Volatility.IBlackVolSurface_Factory 
              let EquityFXVolSurface = new Cephei.QL.Experimental.Volatility.CEquityFXVolSurface_Factory () :> Cephei.QL.Experimental.Volatility.IEquityFXVolSurface_Factory 
              let ExtendedBlackVarianceCurve = new Cephei.QL.Experimental.Volatility.CExtendedBlackVarianceCurve_Factory () :> Cephei.QL.Experimental.Volatility.IExtendedBlackVarianceCurve_Factory 
              let ExtendedBlackVarianceSurface = new Cephei.QL.Experimental.Volatility.CExtendedBlackVarianceSurface_Factory () :> Cephei.QL.Experimental.Volatility.IExtendedBlackVarianceSurface_Factory 
              let InterestRateVolSurface = new Cephei.QL.Experimental.Volatility.CInterestRateVolSurface_Factory () :> Cephei.QL.Experimental.Volatility.IInterestRateVolSurface_Factory 
              let SabrVolSurface = new Cephei.QL.Experimental.Volatility.CSabrVolSurface_Factory () :> Cephei.QL.Experimental.Volatility.ISabrVolSurface_Factory 
              let VolatilityCube = new Cephei.QL.Experimental.Volatility.CVolatilityCube_Factory () :> Cephei.QL.Experimental.Volatility.IVolatilityCube_Factory 
            end
        end

      module Indexes =
        begin
          let AustraliaRegion = new Cephei.QL.Indexes.CAustraliaRegion_Factory () :> Cephei.QL.Indexes.IAustraliaRegion_Factory 
          let BMAIndex = new Cephei.QL.Indexes.CBMAIndex_Factory () :> Cephei.QL.Indexes.IBMAIndex_Factory 
          let EURegion = new Cephei.QL.Indexes.CEURegion_Factory () :> Cephei.QL.Indexes.IEURegion_Factory 
          let FranceRegion = new Cephei.QL.Indexes.CFranceRegion_Factory () :> Cephei.QL.Indexes.IFranceRegion_Factory 
          let IborIndex = new Cephei.QL.Indexes.CIborIndex_Factory () :> Cephei.QL.Indexes.IIborIndex_Factory 
          let InflationIndex = new Cephei.QL.Indexes.CInflationIndex_Factory () :> Cephei.QL.Indexes.IInflationIndex_Factory 
          let InterestRateIndex = new Cephei.QL.Indexes.CInterestRateIndex_Factory () :> Cephei.QL.Indexes.IInterestRateIndex_Factory 
          let OvernightIndex = new Cephei.QL.Indexes.COvernightIndex_Factory () :> Cephei.QL.Indexes.IOvernightIndex_Factory 
          let Region = new Cephei.QL.Indexes.CRegion_Factory () :> Cephei.QL.Indexes.IRegion_Factory 
          let SwapIndex = new Cephei.QL.Indexes.CSwapIndex_Factory () :> Cephei.QL.Indexes.ISwapIndex_Factory 
          let UKRegion = new Cephei.QL.Indexes.CUKRegion_Factory () :> Cephei.QL.Indexes.IUKRegion_Factory 
          let USRegion = new Cephei.QL.Indexes.CUSRegion_Factory () :> Cephei.QL.Indexes.IUSRegion_Factory 
          let YoYInflationIndex = new Cephei.QL.Indexes.CYoYInflationIndex_Factory () :> Cephei.QL.Indexes.IYoYInflationIndex_Factory 
          let ZeroInflationIndex = new Cephei.QL.Indexes.CZeroInflationIndex_Factory () :> Cephei.QL.Indexes.IZeroInflationIndex_Factory 

          module Ibor =
            begin
              let AUDLibor = new Cephei.QL.Indexes.Ibor.CAUDLibor_Factory () :> Cephei.QL.Indexes.Ibor.IAUDLibor_Factory 
              let CADLibor = new Cephei.QL.Indexes.Ibor.CCADLibor_Factory () :> Cephei.QL.Indexes.Ibor.ICADLibor_Factory 
              let CADLiborON = new Cephei.QL.Indexes.Ibor.CCADLiborON_Factory () :> Cephei.QL.Indexes.Ibor.ICADLiborON_Factory 
              let Cdor = new Cephei.QL.Indexes.Ibor.CCdor_Factory () :> Cephei.QL.Indexes.Ibor.ICdor_Factory 
              let CHFLibor = new Cephei.QL.Indexes.Ibor.CCHFLibor_Factory () :> Cephei.QL.Indexes.Ibor.ICHFLibor_Factory 
              let DailyTenorCHFLibor = new Cephei.QL.Indexes.Ibor.CDailyTenorCHFLibor_Factory () :> Cephei.QL.Indexes.Ibor.IDailyTenorCHFLibor_Factory 
              let DailyTenorEURLibor = new Cephei.QL.Indexes.Ibor.CDailyTenorEURLibor_Factory () :> Cephei.QL.Indexes.Ibor.IDailyTenorEURLibor_Factory 
              let DailyTenorGBPLibor = new Cephei.QL.Indexes.Ibor.CDailyTenorGBPLibor_Factory () :> Cephei.QL.Indexes.Ibor.IDailyTenorGBPLibor_Factory 
              let DailyTenorJPYLibor = new Cephei.QL.Indexes.Ibor.CDailyTenorJPYLibor_Factory () :> Cephei.QL.Indexes.Ibor.IDailyTenorJPYLibor_Factory 
              let DailyTenorLibor = new Cephei.QL.Indexes.Ibor.CDailyTenorLibor_Factory () :> Cephei.QL.Indexes.Ibor.IDailyTenorLibor_Factory 
              let DailyTenorUSDLibor = new Cephei.QL.Indexes.Ibor.CDailyTenorUSDLibor_Factory () :> Cephei.QL.Indexes.Ibor.IDailyTenorUSDLibor_Factory 
              let DKKLibor = new Cephei.QL.Indexes.Ibor.CDKKLibor_Factory () :> Cephei.QL.Indexes.Ibor.IDKKLibor_Factory 
              let Eonia = new Cephei.QL.Indexes.Ibor.CEonia_Factory () :> Cephei.QL.Indexes.Ibor.IEonia_Factory 
              let Euribor = new Cephei.QL.Indexes.Ibor.CEuribor_Factory () :> Cephei.QL.Indexes.Ibor.IEuribor_Factory 
              let EURLibor = new Cephei.QL.Indexes.Ibor.CEURLibor_Factory () :> Cephei.QL.Indexes.Ibor.IEURLibor_Factory 
              let GBPLibor = new Cephei.QL.Indexes.Ibor.CGBPLibor_Factory () :> Cephei.QL.Indexes.Ibor.IGBPLibor_Factory 
              let GBPLiborON = new Cephei.QL.Indexes.Ibor.CGBPLiborON_Factory () :> Cephei.QL.Indexes.Ibor.IGBPLiborON_Factory 
              let Jibar = new Cephei.QL.Indexes.Ibor.CJibar_Factory () :> Cephei.QL.Indexes.Ibor.IJibar_Factory 
              let JPYLibor = new Cephei.QL.Indexes.Ibor.CJPYLibor_Factory () :> Cephei.QL.Indexes.Ibor.IJPYLibor_Factory 
              let Libor = new Cephei.QL.Indexes.Ibor.CLibor_Factory () :> Cephei.QL.Indexes.Ibor.ILibor_Factory 
              let NZDLibor = new Cephei.QL.Indexes.Ibor.CNZDLibor_Factory () :> Cephei.QL.Indexes.Ibor.INZDLibor_Factory 
              let SEKLibor = new Cephei.QL.Indexes.Ibor.CSEKLibor_Factory () :> Cephei.QL.Indexes.Ibor.ISEKLibor_Factory 
              let Tibor = new Cephei.QL.Indexes.Ibor.CTibor_Factory () :> Cephei.QL.Indexes.Ibor.ITibor_Factory 
              let TRLibor = new Cephei.QL.Indexes.Ibor.CTRLibor_Factory () :> Cephei.QL.Indexes.Ibor.ITRLibor_Factory 
              let USDLibor = new Cephei.QL.Indexes.Ibor.CUSDLibor_Factory () :> Cephei.QL.Indexes.Ibor.IUSDLibor_Factory 
              let USDLiborON = new Cephei.QL.Indexes.Ibor.CUSDLiborON_Factory () :> Cephei.QL.Indexes.Ibor.IUSDLiborON_Factory 
              let Zibor = new Cephei.QL.Indexes.Ibor.CZibor_Factory () :> Cephei.QL.Indexes.Ibor.IZibor_Factory 
            end

          module Inflation =
            begin
              let AUCPI = new Cephei.QL.Indexes.Inflation.CAUCPI_Factory () :> Cephei.QL.Indexes.Inflation.IAUCPI_Factory 
              let EUHICP = new Cephei.QL.Indexes.Inflation.CEUHICP_Factory () :> Cephei.QL.Indexes.Inflation.IEUHICP_Factory 
              let FRHICP = new Cephei.QL.Indexes.Inflation.CFRHICP_Factory () :> Cephei.QL.Indexes.Inflation.IFRHICP_Factory 
              let UKRPI = new Cephei.QL.Indexes.Inflation.CUKRPI_Factory () :> Cephei.QL.Indexes.Inflation.IUKRPI_Factory 
              let USCPI = new Cephei.QL.Indexes.Inflation.CUSCPI_Factory () :> Cephei.QL.Indexes.Inflation.IUSCPI_Factory 
              let YYAUCPI = new Cephei.QL.Indexes.Inflation.CYYAUCPI_Factory () :> Cephei.QL.Indexes.Inflation.IYYAUCPI_Factory 
              let YYAUCPIr = new Cephei.QL.Indexes.Inflation.CYYAUCPIr_Factory () :> Cephei.QL.Indexes.Inflation.IYYAUCPIr_Factory 
              let YYEUHICP = new Cephei.QL.Indexes.Inflation.CYYEUHICP_Factory () :> Cephei.QL.Indexes.Inflation.IYYEUHICP_Factory 
              let YYEUHICPr = new Cephei.QL.Indexes.Inflation.CYYEUHICPr_Factory () :> Cephei.QL.Indexes.Inflation.IYYEUHICPr_Factory 
              let YYFRHICP = new Cephei.QL.Indexes.Inflation.CYYFRHICP_Factory () :> Cephei.QL.Indexes.Inflation.IYYFRHICP_Factory 
              let YYFRHICPr = new Cephei.QL.Indexes.Inflation.CYYFRHICPr_Factory () :> Cephei.QL.Indexes.Inflation.IYYFRHICPr_Factory 
              let YYUKRPI = new Cephei.QL.Indexes.Inflation.CYYUKRPI_Factory () :> Cephei.QL.Indexes.Inflation.IYYUKRPI_Factory 
              let YYUKRPIr = new Cephei.QL.Indexes.Inflation.CYYUKRPIr_Factory () :> Cephei.QL.Indexes.Inflation.IYYUKRPIr_Factory 
              let YYUSCPI = new Cephei.QL.Indexes.Inflation.CYYUSCPI_Factory () :> Cephei.QL.Indexes.Inflation.IYYUSCPI_Factory 
              let YYUSCPIr = new Cephei.QL.Indexes.Inflation.CYYUSCPIr_Factory () :> Cephei.QL.Indexes.Inflation.IYYUSCPIr_Factory 
            end

          module Swap =
            begin
              let ChfLiborSwapIsdaFix = new Cephei.QL.Indexes.Swap.CChfLiborSwapIsdaFix_Factory () :> Cephei.QL.Indexes.Swap.IChfLiborSwapIsdaFix_Factory 
              let EurLiborSwapIfrFix = new Cephei.QL.Indexes.Swap.CEurLiborSwapIfrFix_Factory () :> Cephei.QL.Indexes.Swap.IEurLiborSwapIfrFix_Factory 
              let EurLiborSwapIsdaFixA = new Cephei.QL.Indexes.Swap.CEurLiborSwapIsdaFixA_Factory () :> Cephei.QL.Indexes.Swap.IEurLiborSwapIsdaFixA_Factory 
              let EurLiborSwapIsdaFixB = new Cephei.QL.Indexes.Swap.CEurLiborSwapIsdaFixB_Factory () :> Cephei.QL.Indexes.Swap.IEurLiborSwapIsdaFixB_Factory 
              let GbpLiborSwapIsdaFix = new Cephei.QL.Indexes.Swap.CGbpLiborSwapIsdaFix_Factory () :> Cephei.QL.Indexes.Swap.IGbpLiborSwapIsdaFix_Factory 
              let JpyLiborSwapIsdaFixAm = new Cephei.QL.Indexes.Swap.CJpyLiborSwapIsdaFixAm_Factory () :> Cephei.QL.Indexes.Swap.IJpyLiborSwapIsdaFixAm_Factory 
              let JpyLiborSwapIsdaFixPm = new Cephei.QL.Indexes.Swap.CJpyLiborSwapIsdaFixPm_Factory () :> Cephei.QL.Indexes.Swap.IJpyLiborSwapIsdaFixPm_Factory 
              let UsdLiborSwapIsdaFixAm = new Cephei.QL.Indexes.Swap.CUsdLiborSwapIsdaFixAm_Factory () :> Cephei.QL.Indexes.Swap.IUsdLiborSwapIsdaFixAm_Factory 
              let UsdLiborSwapIsdaFixPm = new Cephei.QL.Indexes.Swap.CUsdLiborSwapIsdaFixPm_Factory () :> Cephei.QL.Indexes.Swap.IUsdLiborSwapIsdaFixPm_Factory 
            end
        end

      module Instruments =
        begin
          let AssetOrNothingPayoff = new Cephei.QL.Instruments.CAssetOrNothingPayoff_Factory () :> Cephei.QL.Instruments.IAssetOrNothingPayoff_Factory 
          let AssetSwap = new Cephei.QL.Instruments.CAssetSwap_Factory () :> Cephei.QL.Instruments.IAssetSwap_Factory 
          let Average = new Cephei.QL.Instruments.CAverage_Factory () :> Cephei.QL.Instruments.IAverage_Factory 
          let AverageBasketPayoff = new Cephei.QL.Instruments.CAverageBasketPayoff_Factory () :> Cephei.QL.Instruments.IAverageBasketPayoff_Factory 
          let Barrier = new Cephei.QL.Instruments.CBarrier_Factory () :> Cephei.QL.Instruments.IBarrier_Factory 
          let BarrierOption = new Cephei.QL.Instruments.CBarrierOption_Factory () :> Cephei.QL.Instruments.IBarrierOption_Factory 
          let BasketOption = new Cephei.QL.Instruments.CBasketOption_Factory () :> Cephei.QL.Instruments.IBasketOption_Factory 
          let BasketPayoff = new Cephei.QL.Instruments.CBasketPayoff_Factory () :> Cephei.QL.Instruments.IBasketPayoff_Factory 
          let BMASwap = new Cephei.QL.Instruments.CBMASwap_Factory () :> Cephei.QL.Instruments.IBMASwap_Factory 
          let Bond = new Cephei.QL.Instruments.CBond_Factory () :> Cephei.QL.Instruments.IBond_Factory 
          let BondArguments = new Cephei.QL.Instruments.CBondArguments_Factory () :> Cephei.QL.Instruments.IBondArguments_Factory 
          let BondResults = new Cephei.QL.Instruments.CBondResults_Factory () :> Cephei.QL.Instruments.IBondResults_Factory 
          let Callability = new Cephei.QL.Instruments.CCallability_Factory () :> Cephei.QL.Instruments.ICallability_Factory 
          let CallabilityPrice = new Cephei.QL.Instruments.CCallabilityPrice_Factory () :> Cephei.QL.Instruments.ICallabilityPrice_Factory 
          let Cap = new Cephei.QL.Instruments.CCap_Factory () :> Cephei.QL.Instruments.ICap_Factory 
          let CapFloor = new Cephei.QL.Instruments.CCapFloor_Factory () :> Cephei.QL.Instruments.ICapFloor_Factory 
          let CashOrNothingPayoff = new Cephei.QL.Instruments.CCashOrNothingPayoff_Factory () :> Cephei.QL.Instruments.ICashOrNothingPayoff_Factory 
          let Claim = new Cephei.QL.Instruments.CClaim_Factory () :> Cephei.QL.Instruments.IClaim_Factory 
          let CliquetOption = new Cephei.QL.Instruments.CCliquetOption_Factory () :> Cephei.QL.Instruments.ICliquetOption_Factory 
          let Collar = new Cephei.QL.Instruments.CCollar_Factory () :> Cephei.QL.Instruments.ICollar_Factory 
          let CompositeInstrument = new Cephei.QL.Instruments.CCompositeInstrument_Factory () :> Cephei.QL.Instruments.ICompositeInstrument_Factory 
          let ContinuousAveragingAsianOption = new Cephei.QL.Instruments.CContinuousAveragingAsianOption_Factory () :> Cephei.QL.Instruments.IContinuousAveragingAsianOption_Factory 
          let ContinuousFixedLookbackOption = new Cephei.QL.Instruments.CContinuousFixedLookbackOption_Factory () :> Cephei.QL.Instruments.IContinuousFixedLookbackOption_Factory 
          let ContinuousFloatingLookbackOption = new Cephei.QL.Instruments.CContinuousFloatingLookbackOption_Factory () :> Cephei.QL.Instruments.IContinuousFloatingLookbackOption_Factory 
          let CreditDefaultSwap = new Cephei.QL.Instruments.CCreditDefaultSwap_Factory () :> Cephei.QL.Instruments.ICreditDefaultSwap_Factory 
          let DiscreteAveragingAsianOption = new Cephei.QL.Instruments.CDiscreteAveragingAsianOption_Factory () :> Cephei.QL.Instruments.IDiscreteAveragingAsianOption_Factory 
          let DividendVanillaOption = new Cephei.QL.Instruments.CDividendVanillaOption_Factory () :> Cephei.QL.Instruments.IDividendVanillaOption_Factory 
          let DoubleStickyRatchetPayoff = new Cephei.QL.Instruments.CDoubleStickyRatchetPayoff_Factory () :> Cephei.QL.Instruments.IDoubleStickyRatchetPayoff_Factory 
          let EuropeanOption = new Cephei.QL.Instruments.CEuropeanOption_Factory () :> Cephei.QL.Instruments.IEuropeanOption_Factory 
          let FaceValueAccrualClaim = new Cephei.QL.Instruments.CFaceValueAccrualClaim_Factory () :> Cephei.QL.Instruments.IFaceValueAccrualClaim_Factory 
          let FaceValueClaim = new Cephei.QL.Instruments.CFaceValueClaim_Factory () :> Cephei.QL.Instruments.IFaceValueClaim_Factory 
          let FixedRateBondForward = new Cephei.QL.Instruments.CFixedRateBondForward_Factory () :> Cephei.QL.Instruments.IFixedRateBondForward_Factory 
          let FloatingTypePayoff = new Cephei.QL.Instruments.CFloatingTypePayoff_Factory () :> Cephei.QL.Instruments.IFloatingTypePayoff_Factory 
          let Floor = new Cephei.QL.Instruments.CFloor_Factory () :> Cephei.QL.Instruments.IFloor_Factory 
          let Forward = new Cephei.QL.Instruments.CForward_Factory () :> Cephei.QL.Instruments.IForward_Factory 
          let ForwardRateAgreement = new Cephei.QL.Instruments.CForwardRateAgreement_Factory () :> Cephei.QL.Instruments.IForwardRateAgreement_Factory 
          let ForwardTypePayoff = new Cephei.QL.Instruments.CForwardTypePayoff_Factory () :> Cephei.QL.Instruments.IForwardTypePayoff_Factory 
          let ForwardVanillaOption = new Cephei.QL.Instruments.CForwardVanillaOption_Factory () :> Cephei.QL.Instruments.IForwardVanillaOption_Factory 
          let GapPayoff = new Cephei.QL.Instruments.CGapPayoff_Factory () :> Cephei.QL.Instruments.IGapPayoff_Factory 
          let MakeCapFloor = new Cephei.QL.Instruments.CMakeCapFloor_Factory () :> Cephei.QL.Instruments.IMakeCapFloor_Factory 
          let MakeCms = new Cephei.QL.Instruments.CMakeCms_Factory () :> Cephei.QL.Instruments.IMakeCms_Factory 
          let MakeOIS = new Cephei.QL.Instruments.CMakeOIS_Factory () :> Cephei.QL.Instruments.IMakeOIS_Factory 
          let MakeSwaption = new Cephei.QL.Instruments.CMakeSwaption_Factory () :> Cephei.QL.Instruments.IMakeSwaption_Factory 
          let MakeVanillaSwap = new Cephei.QL.Instruments.CMakeVanillaSwap_Factory () :> Cephei.QL.Instruments.IMakeVanillaSwap_Factory 
          let MakeYoYInflationCapFloor = new Cephei.QL.Instruments.CMakeYoYInflationCapFloor_Factory () :> Cephei.QL.Instruments.IMakeYoYInflationCapFloor_Factory 
          let MaxBasketPayoff = new Cephei.QL.Instruments.CMaxBasketPayoff_Factory () :> Cephei.QL.Instruments.IMaxBasketPayoff_Factory 
          let MinBasketPayoff = new Cephei.QL.Instruments.CMinBasketPayoff_Factory () :> Cephei.QL.Instruments.IMinBasketPayoff_Factory 
          let MultiAssetOption = new Cephei.QL.Instruments.CMultiAssetOption_Factory () :> Cephei.QL.Instruments.IMultiAssetOption_Factory 
          let NullPayoff = new Cephei.QL.Instruments.CNullPayoff_Factory () :> Cephei.QL.Instruments.INullPayoff_Factory 
          let OneAssetOption = new Cephei.QL.Instruments.COneAssetOption_Factory () :> Cephei.QL.Instruments.IOneAssetOption_Factory 
          let OvernightIndexedSwap = new Cephei.QL.Instruments.COvernightIndexedSwap_Factory () :> Cephei.QL.Instruments.IOvernightIndexedSwap_Factory 
          let PercentageStrikePayoff = new Cephei.QL.Instruments.CPercentageStrikePayoff_Factory () :> Cephei.QL.Instruments.IPercentageStrikePayoff_Factory 
          let PlainVanillaPayoff = new Cephei.QL.Instruments.CPlainVanillaPayoff_Factory () :> Cephei.QL.Instruments.IPlainVanillaPayoff_Factory 
          let QuantoBarrierOption = new Cephei.QL.Instruments.CQuantoBarrierOption_Factory () :> Cephei.QL.Instruments.IQuantoBarrierOption_Factory 
          let QuantoForwardVanillaOption = new Cephei.QL.Instruments.CQuantoForwardVanillaOption_Factory () :> Cephei.QL.Instruments.IQuantoForwardVanillaOption_Factory 
          let QuantoVanillaOption = new Cephei.QL.Instruments.CQuantoVanillaOption_Factory () :> Cephei.QL.Instruments.IQuantoVanillaOption_Factory 
          let RatchetMaxPayoff = new Cephei.QL.Instruments.CRatchetMaxPayoff_Factory () :> Cephei.QL.Instruments.IRatchetMaxPayoff_Factory 
          let RatchetMinPayoff = new Cephei.QL.Instruments.CRatchetMinPayoff_Factory () :> Cephei.QL.Instruments.IRatchetMinPayoff_Factory 
          let RatchetPayoff = new Cephei.QL.Instruments.CRatchetPayoff_Factory () :> Cephei.QL.Instruments.IRatchetPayoff_Factory 
          let Settlement = new Cephei.QL.Instruments.CSettlement_Factory () :> Cephei.QL.Instruments.ISettlement_Factory 
          let StickyMaxPayoff = new Cephei.QL.Instruments.CStickyMaxPayoff_Factory () :> Cephei.QL.Instruments.IStickyMaxPayoff_Factory 
          let StickyMinPayoff = new Cephei.QL.Instruments.CStickyMinPayoff_Factory () :> Cephei.QL.Instruments.IStickyMinPayoff_Factory 
          let StickyPayoff = new Cephei.QL.Instruments.CStickyPayoff_Factory () :> Cephei.QL.Instruments.IStickyPayoff_Factory 
          let Stock = new Cephei.QL.Instruments.CStock_Factory () :> Cephei.QL.Instruments.IStock_Factory 
          let StrikedTypePayoff = new Cephei.QL.Instruments.CStrikedTypePayoff_Factory () :> Cephei.QL.Instruments.IStrikedTypePayoff_Factory 
          let SuperFundPayoff = new Cephei.QL.Instruments.CSuperFundPayoff_Factory () :> Cephei.QL.Instruments.ISuperFundPayoff_Factory 
          let SuperSharePayoff = new Cephei.QL.Instruments.CSuperSharePayoff_Factory () :> Cephei.QL.Instruments.ISuperSharePayoff_Factory 
          let Swap = new Cephei.QL.Instruments.CSwap_Factory () :> Cephei.QL.Instruments.ISwap_Factory 
          let Swaption = new Cephei.QL.Instruments.CSwaption_Factory () :> Cephei.QL.Instruments.ISwaption_Factory 
          let TypePayoff = new Cephei.QL.Instruments.CTypePayoff_Factory () :> Cephei.QL.Instruments.ITypePayoff_Factory 
          let VanillaOption = new Cephei.QL.Instruments.CVanillaOption_Factory () :> Cephei.QL.Instruments.IVanillaOption_Factory 
          let VanillaSwap = new Cephei.QL.Instruments.CVanillaSwap_Factory () :> Cephei.QL.Instruments.IVanillaSwap_Factory 
          let VarianceSwap = new Cephei.QL.Instruments.CVarianceSwap_Factory () :> Cephei.QL.Instruments.IVarianceSwap_Factory 
          let YearOnYearInflationSwap = new Cephei.QL.Instruments.CYearOnYearInflationSwap_Factory () :> Cephei.QL.Instruments.IYearOnYearInflationSwap_Factory 
          let YoYInflationCap = new Cephei.QL.Instruments.CYoYInflationCap_Factory () :> Cephei.QL.Instruments.IYoYInflationCap_Factory 
          let YoYInflationCapFloor = new Cephei.QL.Instruments.CYoYInflationCapFloor_Factory () :> Cephei.QL.Instruments.IYoYInflationCapFloor_Factory 
          let YoYInflationCollar = new Cephei.QL.Instruments.CYoYInflationCollar_Factory () :> Cephei.QL.Instruments.IYoYInflationCollar_Factory 
          let YoYInflationFloor = new Cephei.QL.Instruments.CYoYInflationFloor_Factory () :> Cephei.QL.Instruments.IYoYInflationFloor_Factory 
          let ZeroCouponInflationSwap = new Cephei.QL.Instruments.CZeroCouponInflationSwap_Factory () :> Cephei.QL.Instruments.IZeroCouponInflationSwap_Factory 

          module Bonds =
            begin
              let CmsRateBond = new Cephei.QL.Instruments.Bonds.CCmsRateBond_Factory () :> Cephei.QL.Instruments.Bonds.ICmsRateBond_Factory 
              let FixedRateBond = new Cephei.QL.Instruments.Bonds.CFixedRateBond_Factory () :> Cephei.QL.Instruments.Bonds.IFixedRateBond_Factory 
              let FloatingRateBond = new Cephei.QL.Instruments.Bonds.CFloatingRateBond_Factory () :> Cephei.QL.Instruments.Bonds.IFloatingRateBond_Factory 
              let ZeroCouponBond = new Cephei.QL.Instruments.Bonds.CZeroCouponBond_Factory () :> Cephei.QL.Instruments.Bonds.IZeroCouponBond_Factory 
            end
        end

      module Legacy =
        begin

          module Libormarketmodels =
            begin
              let LfmCovarianceParameterization = new Cephei.QL.Legacy.Libormarketmodels.CLfmCovarianceParameterization_Factory () :> Cephei.QL.Legacy.Libormarketmodels.ILfmCovarianceParameterization_Factory 
              let LfmCovarianceProxy = new Cephei.QL.Legacy.Libormarketmodels.CLfmCovarianceProxy_Factory () :> Cephei.QL.Legacy.Libormarketmodels.ILfmCovarianceProxy_Factory 
              let LfmHullWhiteParameterization = new Cephei.QL.Legacy.Libormarketmodels.CLfmHullWhiteParameterization_Factory () :> Cephei.QL.Legacy.Libormarketmodels.ILfmHullWhiteParameterization_Factory 
              let LfmSwaptionEngine = new Cephei.QL.Legacy.Libormarketmodels.CLfmSwaptionEngine_Factory () :> Cephei.QL.Legacy.Libormarketmodels.ILfmSwaptionEngine_Factory 
              let LiborForwardModel = new Cephei.QL.Legacy.Libormarketmodels.CLiborForwardModel_Factory () :> Cephei.QL.Legacy.Libormarketmodels.ILiborForwardModel_Factory 
              let LiborForwardModelProcess = new Cephei.QL.Legacy.Libormarketmodels.CLiborForwardModelProcess_Factory () :> Cephei.QL.Legacy.Libormarketmodels.ILiborForwardModelProcess_Factory 
              let LmConstWrapperCorrelationModel = new Cephei.QL.Legacy.Libormarketmodels.CLmConstWrapperCorrelationModel_Factory () :> Cephei.QL.Legacy.Libormarketmodels.ILmConstWrapperCorrelationModel_Factory 
              let LmConstWrapperVolatilityModel = new Cephei.QL.Legacy.Libormarketmodels.CLmConstWrapperVolatilityModel_Factory () :> Cephei.QL.Legacy.Libormarketmodels.ILmConstWrapperVolatilityModel_Factory 
              let LmCorrelationModel = new Cephei.QL.Legacy.Libormarketmodels.CLmCorrelationModel_Factory () :> Cephei.QL.Legacy.Libormarketmodels.ILmCorrelationModel_Factory 
              let LmExponentialCorrelationModel = new Cephei.QL.Legacy.Libormarketmodels.CLmExponentialCorrelationModel_Factory () :> Cephei.QL.Legacy.Libormarketmodels.ILmExponentialCorrelationModel_Factory 
              let LmExtLinearExponentialVolModel = new Cephei.QL.Legacy.Libormarketmodels.CLmExtLinearExponentialVolModel_Factory () :> Cephei.QL.Legacy.Libormarketmodels.ILmExtLinearExponentialVolModel_Factory 
              let LmFixedVolatilityModel = new Cephei.QL.Legacy.Libormarketmodels.CLmFixedVolatilityModel_Factory () :> Cephei.QL.Legacy.Libormarketmodels.ILmFixedVolatilityModel_Factory 
              let LmLinearExponentialCorrelationModel = new Cephei.QL.Legacy.Libormarketmodels.CLmLinearExponentialCorrelationModel_Factory () :> Cephei.QL.Legacy.Libormarketmodels.ILmLinearExponentialCorrelationModel_Factory 
              let LmLinearExponentialVolatilityModel = new Cephei.QL.Legacy.Libormarketmodels.CLmLinearExponentialVolatilityModel_Factory () :> Cephei.QL.Legacy.Libormarketmodels.ILmLinearExponentialVolatilityModel_Factory 
              let LmVolatilityModel = new Cephei.QL.Legacy.Libormarketmodels.CLmVolatilityModel_Factory () :> Cephei.QL.Legacy.Libormarketmodels.ILmVolatilityModel_Factory 
            end

          module Pricers =
            begin
            end

          module Termstructures =
            begin
            end
        end

      module Math =
        begin
          let Array = new Cephei.QL.Math.CArray_Factory () :> Cephei.QL.Math.IArray_Factory 
          let BernsteinPolynomial = new Cephei.QL.Math.CBernsteinPolynomial_Factory () :> Cephei.QL.Math.IBernsteinPolynomial_Factory 
          let BoundedDomain = new Cephei.QL.Math.CBoundedDomain_Factory () :> Cephei.QL.Math.IBoundedDomain_Factory 
          let BSpline = new Cephei.QL.Math.CBSpline_Factory () :> Cephei.QL.Math.IBSpline_Factory 
          let CeilingTruncation = new Cephei.QL.Math.CCeilingTruncation_Factory () :> Cephei.QL.Math.ICeilingTruncation_Factory 
          let ClosestRounding = new Cephei.QL.Math.CClosestRounding_Factory () :> Cephei.QL.Math.IClosestRounding_Factory 
          let Curve = new Cephei.QL.Math.CCurve_Factory () :> Cephei.QL.Math.ICurve_Factory 
          let Domain = new Cephei.QL.Math.CDomain_Factory () :> Cephei.QL.Math.IDomain_Factory 
          let DownRounding = new Cephei.QL.Math.CDownRounding_Factory () :> Cephei.QL.Math.IDownRounding_Factory 
          let ErrorFunction = new Cephei.QL.Math.CErrorFunction_Factory () :> Cephei.QL.Math.IErrorFunction_Factory 
          let everywhere = new Cephei.QL.Math.Ceverywhere_Factory () :> Cephei.QL.Math.Ieverywhere_Factory 
          let Factorial = new Cephei.QL.Math.CFactorial_Factory () :> Cephei.QL.Math.IFactorial_Factory 
          let FloorTruncation = new Cephei.QL.Math.CFloorTruncation_Factory () :> Cephei.QL.Math.IFloorTruncation_Factory 
          let GaussianKernel = new Cephei.QL.Math.CGaussianKernel_Factory () :> Cephei.QL.Math.IGaussianKernel_Factory 
          let Interpolation = new Cephei.QL.Math.CInterpolation_Factory () :> Cephei.QL.Math.IInterpolation_Factory 
          let KernelFunction = new Cephei.QL.Math.CKernelFunction_Factory () :> Cephei.QL.Math.IKernelFunction_Factory 
          let LinearRegression = new Cephei.QL.Math.CLinearRegression_Factory () :> Cephei.QL.Math.ILinearRegression_Factory 
          let LogGrid = new Cephei.QL.Math.CLogGrid_Factory () :> Cephei.QL.Math.ILogGrid_Factory 
          let Matrix = new Cephei.QL.Math.CMatrix_Factory () :> Cephei.QL.Math.IMatrix_Factory 
          let nowhere = new Cephei.QL.Math.Cnowhere_Factory () :> Cephei.QL.Math.Inowhere_Factory 
          let NullDomain = new Cephei.QL.Math.CNullDomain_Factory () :> Cephei.QL.Math.INullDomain_Factory 
          let PrimeNumbers = new Cephei.QL.Math.CPrimeNumbers_Factory () :> Cephei.QL.Math.IPrimeNumbers_Factory 
          let quadratic = new Cephei.QL.Math.Cquadratic_Factory () :> Cephei.QL.Math.Iquadratic_Factory 
          let RectangularDomain = new Cephei.QL.Math.CRectangularDomain_Factory () :> Cephei.QL.Math.IRectangularDomain_Factory 
          let Rounding = new Cephei.QL.Math.CRounding_Factory () :> Cephei.QL.Math.IRounding_Factory 
          let SampledCurve = new Cephei.QL.Math.CSampledCurve_Factory () :> Cephei.QL.Math.ISampledCurve_Factory 
          let Surface = new Cephei.QL.Math.CSurface_Factory () :> Cephei.QL.Math.ISurface_Factory 
          let TestCurve = new Cephei.QL.Math.CTestCurve_Factory () :> Cephei.QL.Math.ITestCurve_Factory 
          let TestSurface = new Cephei.QL.Math.CTestSurface_Factory () :> Cephei.QL.Math.ITestSurface_Factory 
          let TransformedGrid = new Cephei.QL.Math.CTransformedGrid_Factory () :> Cephei.QL.Math.ITransformedGrid_Factory 
          let UniversalDomain = new Cephei.QL.Math.CUniversalDomain_Factory () :> Cephei.QL.Math.IUniversalDomain_Factory 
          let UpRounding = new Cephei.QL.Math.CUpRounding_Factory () :> Cephei.QL.Math.IUpRounding_Factory 

          module Copulas =
            begin
              let ClaytonCopula = new Cephei.QL.Math.Copulas.CClaytonCopula_Factory () :> Cephei.QL.Math.Copulas.IClaytonCopula_Factory 
              let FarlieGumbelMorgensternCopula = new Cephei.QL.Math.Copulas.CFarlieGumbelMorgensternCopula_Factory () :> Cephei.QL.Math.Copulas.IFarlieGumbelMorgensternCopula_Factory 
              let FrankCopula = new Cephei.QL.Math.Copulas.CFrankCopula_Factory () :> Cephei.QL.Math.Copulas.IFrankCopula_Factory 
              let GaussianCopula = new Cephei.QL.Math.Copulas.CGaussianCopula_Factory () :> Cephei.QL.Math.Copulas.IGaussianCopula_Factory 
              let GumbelCopula = new Cephei.QL.Math.Copulas.CGumbelCopula_Factory () :> Cephei.QL.Math.Copulas.IGumbelCopula_Factory 
              let IndependentCopula = new Cephei.QL.Math.Copulas.CIndependentCopula_Factory () :> Cephei.QL.Math.Copulas.IIndependentCopula_Factory 
              let MarshallOlkinCopula = new Cephei.QL.Math.Copulas.CMarshallOlkinCopula_Factory () :> Cephei.QL.Math.Copulas.IMarshallOlkinCopula_Factory 
              let MaxCopula = new Cephei.QL.Math.Copulas.CMaxCopula_Factory () :> Cephei.QL.Math.Copulas.IMaxCopula_Factory 
              let MinCopula = new Cephei.QL.Math.Copulas.CMinCopula_Factory () :> Cephei.QL.Math.Copulas.IMinCopula_Factory 
            end

          module Distributions =
            begin
              let BinomialDistribution = new Cephei.QL.Math.Distributions.CBinomialDistribution_Factory () :> Cephei.QL.Math.Distributions.IBinomialDistribution_Factory 
              let BivariateCumulativeNormalDistributionDr78 = new Cephei.QL.Math.Distributions.CBivariateCumulativeNormalDistributionDr78_Factory () :> Cephei.QL.Math.Distributions.IBivariateCumulativeNormalDistributionDr78_Factory 
              let BivariateCumulativeNormalDistributionWe04DP = new Cephei.QL.Math.Distributions.CBivariateCumulativeNormalDistributionWe04DP_Factory () :> Cephei.QL.Math.Distributions.IBivariateCumulativeNormalDistributionWe04DP_Factory 
              let ChiSquareDistribution = new Cephei.QL.Math.Distributions.CChiSquareDistribution_Factory () :> Cephei.QL.Math.Distributions.IChiSquareDistribution_Factory 
              let CumulativeBinomialDistribution = new Cephei.QL.Math.Distributions.CCumulativeBinomialDistribution_Factory () :> Cephei.QL.Math.Distributions.ICumulativeBinomialDistribution_Factory 
              let CumulativeNormalDistribution = new Cephei.QL.Math.Distributions.CCumulativeNormalDistribution_Factory () :> Cephei.QL.Math.Distributions.ICumulativeNormalDistribution_Factory 
              let CumulativePoissonDistribution = new Cephei.QL.Math.Distributions.CCumulativePoissonDistribution_Factory () :> Cephei.QL.Math.Distributions.ICumulativePoissonDistribution_Factory 
              let CumulativeStudentDistribution = new Cephei.QL.Math.Distributions.CCumulativeStudentDistribution_Factory () :> Cephei.QL.Math.Distributions.ICumulativeStudentDistribution_Factory 
              let GammaDistribution = new Cephei.QL.Math.Distributions.CGammaDistribution_Factory () :> Cephei.QL.Math.Distributions.IGammaDistribution_Factory 
              let GammaFunction = new Cephei.QL.Math.Distributions.CGammaFunction_Factory () :> Cephei.QL.Math.Distributions.IGammaFunction_Factory 
              let InverseCumulativeNormal = new Cephei.QL.Math.Distributions.CInverseCumulativeNormal_Factory () :> Cephei.QL.Math.Distributions.IInverseCumulativeNormal_Factory 
              let InverseCumulativePoisson = new Cephei.QL.Math.Distributions.CInverseCumulativePoisson_Factory () :> Cephei.QL.Math.Distributions.IInverseCumulativePoisson_Factory 
              let InverseCumulativeStudent = new Cephei.QL.Math.Distributions.CInverseCumulativeStudent_Factory () :> Cephei.QL.Math.Distributions.IInverseCumulativeStudent_Factory 
              let InverseNonCentralChiSquareDistribution = new Cephei.QL.Math.Distributions.CInverseNonCentralChiSquareDistribution_Factory () :> Cephei.QL.Math.Distributions.IInverseNonCentralChiSquareDistribution_Factory 
              let MoroInverseCumulativeNormal = new Cephei.QL.Math.Distributions.CMoroInverseCumulativeNormal_Factory () :> Cephei.QL.Math.Distributions.IMoroInverseCumulativeNormal_Factory 
              let NonCentralChiSquareDistribution = new Cephei.QL.Math.Distributions.CNonCentralChiSquareDistribution_Factory () :> Cephei.QL.Math.Distributions.INonCentralChiSquareDistribution_Factory 
              let NormalDistribution = new Cephei.QL.Math.Distributions.CNormalDistribution_Factory () :> Cephei.QL.Math.Distributions.INormalDistribution_Factory 
              let PoissonDistribution = new Cephei.QL.Math.Distributions.CPoissonDistribution_Factory () :> Cephei.QL.Math.Distributions.IPoissonDistribution_Factory 
              let StudentDistribution = new Cephei.QL.Math.Distributions.CStudentDistribution_Factory () :> Cephei.QL.Math.Distributions.IStudentDistribution_Factory 
            end

          module Integrals =
            begin
              let GaussChebyshev2ndIntegration = new Cephei.QL.Math.Integrals.CGaussChebyshev2ndIntegration_Factory () :> Cephei.QL.Math.Integrals.IGaussChebyshev2ndIntegration_Factory 
              let GaussChebyshev2ndPolynomial = new Cephei.QL.Math.Integrals.CGaussChebyshev2ndPolynomial_Factory () :> Cephei.QL.Math.Integrals.IGaussChebyshev2ndPolynomial_Factory 
              let GaussChebyshevIntegration = new Cephei.QL.Math.Integrals.CGaussChebyshevIntegration_Factory () :> Cephei.QL.Math.Integrals.IGaussChebyshevIntegration_Factory 
              let GaussChebyshevPolynomial = new Cephei.QL.Math.Integrals.CGaussChebyshevPolynomial_Factory () :> Cephei.QL.Math.Integrals.IGaussChebyshevPolynomial_Factory 
              let GaussGegenbauerIntegration = new Cephei.QL.Math.Integrals.CGaussGegenbauerIntegration_Factory () :> Cephei.QL.Math.Integrals.IGaussGegenbauerIntegration_Factory 
              let GaussGegenbauerPolynomial = new Cephei.QL.Math.Integrals.CGaussGegenbauerPolynomial_Factory () :> Cephei.QL.Math.Integrals.IGaussGegenbauerPolynomial_Factory 
              let GaussHermiteIntegration = new Cephei.QL.Math.Integrals.CGaussHermiteIntegration_Factory () :> Cephei.QL.Math.Integrals.IGaussHermiteIntegration_Factory 
              let GaussHermitePolynomial = new Cephei.QL.Math.Integrals.CGaussHermitePolynomial_Factory () :> Cephei.QL.Math.Integrals.IGaussHermitePolynomial_Factory 
              let GaussHyperbolicIntegration = new Cephei.QL.Math.Integrals.CGaussHyperbolicIntegration_Factory () :> Cephei.QL.Math.Integrals.IGaussHyperbolicIntegration_Factory 
              let GaussHyperbolicPolynomial = new Cephei.QL.Math.Integrals.CGaussHyperbolicPolynomial_Factory () :> Cephei.QL.Math.Integrals.IGaussHyperbolicPolynomial_Factory 
              let GaussianOrthogonalPolynomial = new Cephei.QL.Math.Integrals.CGaussianOrthogonalPolynomial_Factory () :> Cephei.QL.Math.Integrals.IGaussianOrthogonalPolynomial_Factory 
              let GaussianQuadrature = new Cephei.QL.Math.Integrals.CGaussianQuadrature_Factory () :> Cephei.QL.Math.Integrals.IGaussianQuadrature_Factory 
              let GaussJacobiIntegration = new Cephei.QL.Math.Integrals.CGaussJacobiIntegration_Factory () :> Cephei.QL.Math.Integrals.IGaussJacobiIntegration_Factory 
              let GaussJacobiPolynomial = new Cephei.QL.Math.Integrals.CGaussJacobiPolynomial_Factory () :> Cephei.QL.Math.Integrals.IGaussJacobiPolynomial_Factory 
              let GaussKronrodAdaptive = new Cephei.QL.Math.Integrals.CGaussKronrodAdaptive_Factory () :> Cephei.QL.Math.Integrals.IGaussKronrodAdaptive_Factory 
              let GaussKronrodNonAdaptive = new Cephei.QL.Math.Integrals.CGaussKronrodNonAdaptive_Factory () :> Cephei.QL.Math.Integrals.IGaussKronrodNonAdaptive_Factory 
              let GaussLaguerreIntegration = new Cephei.QL.Math.Integrals.CGaussLaguerreIntegration_Factory () :> Cephei.QL.Math.Integrals.IGaussLaguerreIntegration_Factory 
              let GaussLaguerrePolynomial = new Cephei.QL.Math.Integrals.CGaussLaguerrePolynomial_Factory () :> Cephei.QL.Math.Integrals.IGaussLaguerrePolynomial_Factory 
              let GaussLegendreIntegration = new Cephei.QL.Math.Integrals.CGaussLegendreIntegration_Factory () :> Cephei.QL.Math.Integrals.IGaussLegendreIntegration_Factory 
              let GaussLegendrePolynomial = new Cephei.QL.Math.Integrals.CGaussLegendrePolynomial_Factory () :> Cephei.QL.Math.Integrals.IGaussLegendrePolynomial_Factory 
              let GaussLobattoIntegral = new Cephei.QL.Math.Integrals.CGaussLobattoIntegral_Factory () :> Cephei.QL.Math.Integrals.IGaussLobattoIntegral_Factory 
              let Integrator = new Cephei.QL.Math.Integrals.CIntegrator_Factory () :> Cephei.QL.Math.Integrals.IIntegrator_Factory 
              let SegmentIntegral = new Cephei.QL.Math.Integrals.CSegmentIntegral_Factory () :> Cephei.QL.Math.Integrals.ISegmentIntegral_Factory 
              let SimpsonIntegral = new Cephei.QL.Math.Integrals.CSimpsonIntegral_Factory () :> Cephei.QL.Math.Integrals.ISimpsonIntegral_Factory 
              let TabulatedGaussLegendre = new Cephei.QL.Math.Integrals.CTabulatedGaussLegendre_Factory () :> Cephei.QL.Math.Integrals.ITabulatedGaussLegendre_Factory 
            end

          module Interpolations =
            begin
              let Abcd = new Cephei.QL.Math.Interpolations.CAbcd_Factory () :> Cephei.QL.Math.Interpolations.IAbcd_Factory 
              let AbcdInterpolation = new Cephei.QL.Math.Interpolations.CAbcdInterpolation_Factory () :> Cephei.QL.Math.Interpolations.IAbcdInterpolation_Factory 
              let AkimaCubicInterpolation = new Cephei.QL.Math.Interpolations.CAkimaCubicInterpolation_Factory () :> Cephei.QL.Math.Interpolations.IAkimaCubicInterpolation_Factory 
              let BackwardFlat = new Cephei.QL.Math.Interpolations.CBackwardFlat_Factory () :> Cephei.QL.Math.Interpolations.IBackwardFlat_Factory 
              let BackwardFlatInterpolation = new Cephei.QL.Math.Interpolations.CBackwardFlatInterpolation_Factory () :> Cephei.QL.Math.Interpolations.IBackwardFlatInterpolation_Factory 
              let Bicubic = new Cephei.QL.Math.Interpolations.CBicubic_Factory () :> Cephei.QL.Math.Interpolations.IBicubic_Factory 
              let BicubicSpline = new Cephei.QL.Math.Interpolations.CBicubicSpline_Factory () :> Cephei.QL.Math.Interpolations.IBicubicSpline_Factory 
              let Bilinear = new Cephei.QL.Math.Interpolations.CBilinear_Factory () :> Cephei.QL.Math.Interpolations.IBilinear_Factory 
              let BilinearInterpolation = new Cephei.QL.Math.Interpolations.CBilinearInterpolation_Factory () :> Cephei.QL.Math.Interpolations.IBilinearInterpolation_Factory 
              let ConvexMonotone = new Cephei.QL.Math.Interpolations.CConvexMonotone_Factory () :> Cephei.QL.Math.Interpolations.IConvexMonotone_Factory 
              let Cubic = new Cephei.QL.Math.Interpolations.CCubic_Factory () :> Cephei.QL.Math.Interpolations.ICubic_Factory 
              let CubicInterpolation = new Cephei.QL.Math.Interpolations.CCubicInterpolation_Factory () :> Cephei.QL.Math.Interpolations.ICubicInterpolation_Factory 
              let CubicNaturalSpline = new Cephei.QL.Math.Interpolations.CCubicNaturalSpline_Factory () :> Cephei.QL.Math.Interpolations.ICubicNaturalSpline_Factory 
              let CubicSplineOvershootingMinimization1 = new Cephei.QL.Math.Interpolations.CCubicSplineOvershootingMinimization1_Factory () :> Cephei.QL.Math.Interpolations.ICubicSplineOvershootingMinimization1_Factory 
              let CubicSplineOvershootingMinimization2 = new Cephei.QL.Math.Interpolations.CCubicSplineOvershootingMinimization2_Factory () :> Cephei.QL.Math.Interpolations.ICubicSplineOvershootingMinimization2_Factory 
              let Extrapolator = new Cephei.QL.Math.Interpolations.CExtrapolator_Factory () :> Cephei.QL.Math.Interpolations.IExtrapolator_Factory 
              let FlatExtrapolator2D = new Cephei.QL.Math.Interpolations.CFlatExtrapolator2D_Factory () :> Cephei.QL.Math.Interpolations.IFlatExtrapolator2D_Factory 
              let ForwardFlat = new Cephei.QL.Math.Interpolations.CForwardFlat_Factory () :> Cephei.QL.Math.Interpolations.IForwardFlat_Factory 
              let ForwardFlatInterpolation = new Cephei.QL.Math.Interpolations.CForwardFlatInterpolation_Factory () :> Cephei.QL.Math.Interpolations.IForwardFlatInterpolation_Factory 
              let FritschButlandCubic = new Cephei.QL.Math.Interpolations.CFritschButlandCubic_Factory () :> Cephei.QL.Math.Interpolations.IFritschButlandCubic_Factory 
              let FritschButlandLogCubic = new Cephei.QL.Math.Interpolations.CFritschButlandLogCubic_Factory () :> Cephei.QL.Math.Interpolations.IFritschButlandLogCubic_Factory 
              let Interpolation2D = new Cephei.QL.Math.Interpolations.CInterpolation2D_Factory () :> Cephei.QL.Math.Interpolations.IInterpolation2D_Factory 
              let KernelInterpolation = new Cephei.QL.Math.Interpolations.CKernelInterpolation_Factory () :> Cephei.QL.Math.Interpolations.IKernelInterpolation_Factory 
              let KernelInterpolation2D = new Cephei.QL.Math.Interpolations.CKernelInterpolation2D_Factory () :> Cephei.QL.Math.Interpolations.IKernelInterpolation2D_Factory 
              let KrugerCubic = new Cephei.QL.Math.Interpolations.CKrugerCubic_Factory () :> Cephei.QL.Math.Interpolations.IKrugerCubic_Factory 
              let KrugerLogCubic = new Cephei.QL.Math.Interpolations.CKrugerLogCubic_Factory () :> Cephei.QL.Math.Interpolations.IKrugerLogCubic_Factory 
              let Linear = new Cephei.QL.Math.Interpolations.CLinear_Factory () :> Cephei.QL.Math.Interpolations.ILinear_Factory 
              let LinearInterpolation = new Cephei.QL.Math.Interpolations.CLinearInterpolation_Factory () :> Cephei.QL.Math.Interpolations.ILinearInterpolation_Factory 
              let LogCubic = new Cephei.QL.Math.Interpolations.CLogCubic_Factory () :> Cephei.QL.Math.Interpolations.ILogCubic_Factory 
              let LogCubicInterpolation = new Cephei.QL.Math.Interpolations.CLogCubicInterpolation_Factory () :> Cephei.QL.Math.Interpolations.ILogCubicInterpolation_Factory 
              let LogCubicNaturalSpline = new Cephei.QL.Math.Interpolations.CLogCubicNaturalSpline_Factory () :> Cephei.QL.Math.Interpolations.ILogCubicNaturalSpline_Factory 
              let LogLinear = new Cephei.QL.Math.Interpolations.CLogLinear_Factory () :> Cephei.QL.Math.Interpolations.ILogLinear_Factory 
              let LogLinearInterpolation = new Cephei.QL.Math.Interpolations.CLogLinearInterpolation_Factory () :> Cephei.QL.Math.Interpolations.ILogLinearInterpolation_Factory 
              let LogParabolic = new Cephei.QL.Math.Interpolations.CLogParabolic_Factory () :> Cephei.QL.Math.Interpolations.ILogParabolic_Factory 
              let MonotonicCubicNaturalSpline = new Cephei.QL.Math.Interpolations.CMonotonicCubicNaturalSpline_Factory () :> Cephei.QL.Math.Interpolations.IMonotonicCubicNaturalSpline_Factory 
              let MonotonicLogCubicNaturalSpline = new Cephei.QL.Math.Interpolations.CMonotonicLogCubicNaturalSpline_Factory () :> Cephei.QL.Math.Interpolations.IMonotonicLogCubicNaturalSpline_Factory 
              let MonotonicLogParabolic = new Cephei.QL.Math.Interpolations.CMonotonicLogParabolic_Factory () :> Cephei.QL.Math.Interpolations.IMonotonicLogParabolic_Factory 
              let MonotonicParabolic = new Cephei.QL.Math.Interpolations.CMonotonicParabolic_Factory () :> Cephei.QL.Math.Interpolations.IMonotonicParabolic_Factory 
              let Parabolic = new Cephei.QL.Math.Interpolations.CParabolic_Factory () :> Cephei.QL.Math.Interpolations.IParabolic_Factory 
              let SABR = new Cephei.QL.Math.Interpolations.CSABR_Factory () :> Cephei.QL.Math.Interpolations.ISABR_Factory 
              let SABRInterpolation = new Cephei.QL.Math.Interpolations.CSABRInterpolation_Factory () :> Cephei.QL.Math.Interpolations.ISABRInterpolation_Factory 
            end

          module Matrixutilities =
            begin
              let BasisIncompleteOrdered = new Cephei.QL.Math.Matrixutilities.CBasisIncompleteOrdered_Factory () :> Cephei.QL.Math.Matrixutilities.IBasisIncompleteOrdered_Factory 
              let CovarianceDecomposition = new Cephei.QL.Math.Matrixutilities.CCovarianceDecomposition_Factory () :> Cephei.QL.Math.Matrixutilities.ICovarianceDecomposition_Factory 
              let OrthogonalProjections = new Cephei.QL.Math.Matrixutilities.COrthogonalProjections_Factory () :> Cephei.QL.Math.Matrixutilities.IOrthogonalProjections_Factory 
              let SalvagingAlgorithm = new Cephei.QL.Math.Matrixutilities.CSalvagingAlgorithm_Factory () :> Cephei.QL.Math.Matrixutilities.ISalvagingAlgorithm_Factory 
              let SVD = new Cephei.QL.Math.Matrixutilities.CSVD_Factory () :> Cephei.QL.Math.Matrixutilities.ISVD_Factory 
              let SymmetricSchurDecomposition = new Cephei.QL.Math.Matrixutilities.CSymmetricSchurDecomposition_Factory () :> Cephei.QL.Math.Matrixutilities.ISymmetricSchurDecomposition_Factory 
              let TqrEigenDecomposition = new Cephei.QL.Math.Matrixutilities.CTqrEigenDecomposition_Factory () :> Cephei.QL.Math.Matrixutilities.ITqrEigenDecomposition_Factory 
            end

          module Optimization =
            begin
              let ArmijoLineSearch = new Cephei.QL.Math.Optimization.CArmijoLineSearch_Factory () :> Cephei.QL.Math.Optimization.IArmijoLineSearch_Factory 
              let BFGS = new Cephei.QL.Math.Optimization.CBFGS_Factory () :> Cephei.QL.Math.Optimization.IBFGS_Factory 
              let BoundaryConstraint = new Cephei.QL.Math.Optimization.CBoundaryConstraint_Factory () :> Cephei.QL.Math.Optimization.IBoundaryConstraint_Factory 
              let CompositeConstraint = new Cephei.QL.Math.Optimization.CCompositeConstraint_Factory () :> Cephei.QL.Math.Optimization.ICompositeConstraint_Factory 
              let ConjugateGradient = new Cephei.QL.Math.Optimization.CConjugateGradient_Factory () :> Cephei.QL.Math.Optimization.IConjugateGradient_Factory 
              let Constraint = new Cephei.QL.Math.Optimization.CConstraint_Factory () :> Cephei.QL.Math.Optimization.IConstraint_Factory 
              let CostFunction = new Cephei.QL.Math.Optimization.CCostFunction_Factory () :> Cephei.QL.Math.Optimization.ICostFunction_Factory 
              let EndCriteria = new Cephei.QL.Math.Optimization.CEndCriteria_Factory () :> Cephei.QL.Math.Optimization.IEndCriteria_Factory 
              let LeastSquareFunction = new Cephei.QL.Math.Optimization.CLeastSquareFunction_Factory () :> Cephei.QL.Math.Optimization.ILeastSquareFunction_Factory 
              let LeastSquareProblem = new Cephei.QL.Math.Optimization.CLeastSquareProblem_Factory () :> Cephei.QL.Math.Optimization.ILeastSquareProblem_Factory 
              let LevenbergMarquardt = new Cephei.QL.Math.Optimization.CLevenbergMarquardt_Factory () :> Cephei.QL.Math.Optimization.ILevenbergMarquardt_Factory 
              let LineSearch = new Cephei.QL.Math.Optimization.CLineSearch_Factory () :> Cephei.QL.Math.Optimization.ILineSearch_Factory 
              let LineSearchBasedMethod = new Cephei.QL.Math.Optimization.CLineSearchBasedMethod_Factory () :> Cephei.QL.Math.Optimization.ILineSearchBasedMethod_Factory 
              let NoConstraint = new Cephei.QL.Math.Optimization.CNoConstraint_Factory () :> Cephei.QL.Math.Optimization.INoConstraint_Factory 
              let NonLinearLeastSquare = new Cephei.QL.Math.Optimization.CNonLinearLeastSquare_Factory () :> Cephei.QL.Math.Optimization.INonLinearLeastSquare_Factory 
              let OptimizationMethod = new Cephei.QL.Math.Optimization.COptimizationMethod_Factory () :> Cephei.QL.Math.Optimization.IOptimizationMethod_Factory 
              let ParametersTransformation = new Cephei.QL.Math.Optimization.CParametersTransformation_Factory () :> Cephei.QL.Math.Optimization.IParametersTransformation_Factory 
              let PositiveConstraint = new Cephei.QL.Math.Optimization.CPositiveConstraint_Factory () :> Cephei.QL.Math.Optimization.IPositiveConstraint_Factory 
              let Problem = new Cephei.QL.Math.Optimization.CProblem_Factory () :> Cephei.QL.Math.Optimization.IProblem_Factory 
              let ProjectedCostFunction = new Cephei.QL.Math.Optimization.CProjectedCostFunction_Factory () :> Cephei.QL.Math.Optimization.IProjectedCostFunction_Factory 
              let Simplex = new Cephei.QL.Math.Optimization.CSimplex_Factory () :> Cephei.QL.Math.Optimization.ISimplex_Factory 
              let SphereCylinderOptimizer = new Cephei.QL.Math.Optimization.CSphereCylinderOptimizer_Factory () :> Cephei.QL.Math.Optimization.ISphereCylinderOptimizer_Factory 
              let SteepestDescent = new Cephei.QL.Math.Optimization.CSteepestDescent_Factory () :> Cephei.QL.Math.Optimization.ISteepestDescent_Factory 
            end

          module Randomnumbers =
            begin
              let FaureRsg = new Cephei.QL.Math.Randomnumbers.CFaureRsg_Factory () :> Cephei.QL.Math.Randomnumbers.IFaureRsg_Factory 
              let HaltonRsg = new Cephei.QL.Math.Randomnumbers.CHaltonRsg_Factory () :> Cephei.QL.Math.Randomnumbers.IHaltonRsg_Factory 
              let KnuthUniformRng = new Cephei.QL.Math.Randomnumbers.CKnuthUniformRng_Factory () :> Cephei.QL.Math.Randomnumbers.IKnuthUniformRng_Factory 
              let LatticeRsg = new Cephei.QL.Math.Randomnumbers.CLatticeRsg_Factory () :> Cephei.QL.Math.Randomnumbers.ILatticeRsg_Factory 
              let LatticeRule = new Cephei.QL.Math.Randomnumbers.CLatticeRule_Factory () :> Cephei.QL.Math.Randomnumbers.ILatticeRule_Factory 
              let LecuyerUniformRng = new Cephei.QL.Math.Randomnumbers.CLecuyerUniformRng_Factory () :> Cephei.QL.Math.Randomnumbers.ILecuyerUniformRng_Factory 
              let MersenneTwisterUniformRng = new Cephei.QL.Math.Randomnumbers.CMersenneTwisterUniformRng_Factory () :> Cephei.QL.Math.Randomnumbers.IMersenneTwisterUniformRng_Factory 
              let Ranlux3UniformRng = new Cephei.QL.Math.Randomnumbers.CRanlux3UniformRng_Factory () :> Cephei.QL.Math.Randomnumbers.IRanlux3UniformRng_Factory 
              let Ranlux4UniformRng = new Cephei.QL.Math.Randomnumbers.CRanlux4UniformRng_Factory () :> Cephei.QL.Math.Randomnumbers.IRanlux4UniformRng_Factory 
              let SeedGenerator = new Cephei.QL.Math.Randomnumbers.CSeedGenerator_Factory () :> Cephei.QL.Math.Randomnumbers.ISeedGenerator_Factory 
              let SobolRsg = new Cephei.QL.Math.Randomnumbers.CSobolRsg_Factory () :> Cephei.QL.Math.Randomnumbers.ISobolRsg_Factory 
            end

          module Solvers1d =
            begin
              let Bisection = new Cephei.QL.Math.Solvers1d.CBisection_Factory () :> Cephei.QL.Math.Solvers1d.IBisection_Factory 
              let Brent = new Cephei.QL.Math.Solvers1d.CBrent_Factory () :> Cephei.QL.Math.Solvers1d.IBrent_Factory 
              let FalsePosition = new Cephei.QL.Math.Solvers1d.CFalsePosition_Factory () :> Cephei.QL.Math.Solvers1d.IFalsePosition_Factory 
              let Newton = new Cephei.QL.Math.Solvers1d.CNewton_Factory () :> Cephei.QL.Math.Solvers1d.INewton_Factory 
              let NewtonSafe = new Cephei.QL.Math.Solvers1d.CNewtonSafe_Factory () :> Cephei.QL.Math.Solvers1d.INewtonSafe_Factory 
              let Ridder = new Cephei.QL.Math.Solvers1d.CRidder_Factory () :> Cephei.QL.Math.Solvers1d.IRidder_Factory 
              let Secant = new Cephei.QL.Math.Solvers1d.CSecant_Factory () :> Cephei.QL.Math.Solvers1d.ISecant_Factory 
            end

          module Statistics =
            begin
              let DiscrepancyStatistics = new Cephei.QL.Math.Statistics.CDiscrepancyStatistics_Factory () :> Cephei.QL.Math.Statistics.IDiscrepancyStatistics_Factory 
              let DoublingConvergenceSteps = new Cephei.QL.Math.Statistics.CDoublingConvergenceSteps_Factory () :> Cephei.QL.Math.Statistics.IDoublingConvergenceSteps_Factory 
              let GeneralStatistics = new Cephei.QL.Math.Statistics.CGeneralStatistics_Factory () :> Cephei.QL.Math.Statistics.IGeneralStatistics_Factory 
              let Histogram = new Cephei.QL.Math.Statistics.CHistogram_Factory () :> Cephei.QL.Math.Statistics.IHistogram_Factory 
              let IncrementalStatistics = new Cephei.QL.Math.Statistics.CIncrementalStatistics_Factory () :> Cephei.QL.Math.Statistics.IIncrementalStatistics_Factory 
            end
        end

      module Methods =
        begin

          module Finitedifferences =
            begin
              let AmericanCondition = new Cephei.QL.Methods.Finitedifferences.CAmericanCondition_Factory () :> Cephei.QL.Methods.Finitedifferences.IAmericanCondition_Factory 
              let BSMOperator = new Cephei.QL.Methods.Finitedifferences.CBSMOperator_Factory () :> Cephei.QL.Methods.Finitedifferences.IBSMOperator_Factory 
              let DMinus = new Cephei.QL.Methods.Finitedifferences.CDMinus_Factory () :> Cephei.QL.Methods.Finitedifferences.IDMinus_Factory 
              let DPlus = new Cephei.QL.Methods.Finitedifferences.CDPlus_Factory () :> Cephei.QL.Methods.Finitedifferences.IDPlus_Factory 
              let DPlusDMinus = new Cephei.QL.Methods.Finitedifferences.CDPlusDMinus_Factory () :> Cephei.QL.Methods.Finitedifferences.IDPlusDMinus_Factory 
              let DZero = new Cephei.QL.Methods.Finitedifferences.CDZero_Factory () :> Cephei.QL.Methods.Finitedifferences.IDZero_Factory 
              let OperatorFactory = new Cephei.QL.Methods.Finitedifferences.COperatorFactory_Factory () :> Cephei.QL.Methods.Finitedifferences.IOperatorFactory_Factory 
              let PdeBSM = new Cephei.QL.Methods.Finitedifferences.CPdeBSM_Factory () :> Cephei.QL.Methods.Finitedifferences.IPdeBSM_Factory 
              let PdeSecondOrderParabolic = new Cephei.QL.Methods.Finitedifferences.CPdeSecondOrderParabolic_Factory () :> Cephei.QL.Methods.Finitedifferences.IPdeSecondOrderParabolic_Factory 
              let PdeShortRate = new Cephei.QL.Methods.Finitedifferences.CPdeShortRate_Factory () :> Cephei.QL.Methods.Finitedifferences.IPdeShortRate_Factory 
              let ShoutCondition = new Cephei.QL.Methods.Finitedifferences.CShoutCondition_Factory () :> Cephei.QL.Methods.Finitedifferences.IShoutCondition_Factory 
              let TridiagonalOperator = new Cephei.QL.Methods.Finitedifferences.CTridiagonalOperator_Factory () :> Cephei.QL.Methods.Finitedifferences.ITridiagonalOperator_Factory 
            end

          module Lattices =
            begin
              let AdditiveEQPBinomialTree = new Cephei.QL.Methods.Lattices.CAdditiveEQPBinomialTree_Factory () :> Cephei.QL.Methods.Lattices.IAdditiveEQPBinomialTree_Factory 
              let CoxRossRubinstein = new Cephei.QL.Methods.Lattices.CCoxRossRubinstein_Factory () :> Cephei.QL.Methods.Lattices.ICoxRossRubinstein_Factory 
              let JarrowRudd = new Cephei.QL.Methods.Lattices.CJarrowRudd_Factory () :> Cephei.QL.Methods.Lattices.IJarrowRudd_Factory 
              let Joshi4 = new Cephei.QL.Methods.Lattices.CJoshi4_Factory () :> Cephei.QL.Methods.Lattices.IJoshi4_Factory 
              let LeisenReimer = new Cephei.QL.Methods.Lattices.CLeisenReimer_Factory () :> Cephei.QL.Methods.Lattices.ILeisenReimer_Factory 
              let Tian = new Cephei.QL.Methods.Lattices.CTian_Factory () :> Cephei.QL.Methods.Lattices.ITian_Factory 
              let Trigeorgis = new Cephei.QL.Methods.Lattices.CTrigeorgis_Factory () :> Cephei.QL.Methods.Lattices.ITrigeorgis_Factory 
              let TrinomialTree = new Cephei.QL.Methods.Lattices.CTrinomialTree_Factory () :> Cephei.QL.Methods.Lattices.ITrinomialTree_Factory 
            end

          module Montecarlo =
            begin
              let BrownianBridge = new Cephei.QL.Methods.Montecarlo.CBrownianBridge_Factory () :> Cephei.QL.Methods.Montecarlo.IBrownianBridge_Factory 
              let LsmBasisSystem = new Cephei.QL.Methods.Montecarlo.CLsmBasisSystem_Factory () :> Cephei.QL.Methods.Montecarlo.ILsmBasisSystem_Factory 
              let MultiPath = new Cephei.QL.Methods.Montecarlo.CMultiPath_Factory () :> Cephei.QL.Methods.Montecarlo.IMultiPath_Factory 
              let NodeData = new Cephei.QL.Methods.Montecarlo.CNodeData_Factory () :> Cephei.QL.Methods.Montecarlo.INodeData_Factory 
              let ParametricExercise = new Cephei.QL.Methods.Montecarlo.CParametricExercise_Factory () :> Cephei.QL.Methods.Montecarlo.IParametricExercise_Factory 
              let Path = new Cephei.QL.Methods.Montecarlo.CPath_Factory () :> Cephei.QL.Methods.Montecarlo.IPath_Factory 
            end
        end

      module Models =
        begin
          let AffineModel = new Cephei.QL.Models.CAffineModel_Factory () :> Cephei.QL.Models.IAffineModel_Factory 
          let CalibratedModel = new Cephei.QL.Models.CCalibratedModel_Factory () :> Cephei.QL.Models.ICalibratedModel_Factory 
          let CalibrationHelper = new Cephei.QL.Models.CCalibrationHelper_Factory () :> Cephei.QL.Models.ICalibrationHelper_Factory 
          let ConstantParameter = new Cephei.QL.Models.CConstantParameter_Factory () :> Cephei.QL.Models.IConstantParameter_Factory 
          let NullParameter = new Cephei.QL.Models.CNullParameter_Factory () :> Cephei.QL.Models.INullParameter_Factory 
          let Parameter = new Cephei.QL.Models.CParameter_Factory () :> Cephei.QL.Models.IParameter_Factory 
          let PiecewiseConstantParameter = new Cephei.QL.Models.CPiecewiseConstantParameter_Factory () :> Cephei.QL.Models.IPiecewiseConstantParameter_Factory 
          let ShortRateModel = new Cephei.QL.Models.CShortRateModel_Factory () :> Cephei.QL.Models.IShortRateModel_Factory 
          let TermStructureConsistentModel = new Cephei.QL.Models.CTermStructureConsistentModel_Factory () :> Cephei.QL.Models.ITermStructureConsistentModel_Factory 
          let TermStructureFittingParameter = new Cephei.QL.Models.CTermStructureFittingParameter_Factory () :> Cephei.QL.Models.ITermStructureFittingParameter_Factory 

          module Equity =
            begin
              let BatesDetJumpModel = new Cephei.QL.Models.Equity.CBatesDetJumpModel_Factory () :> Cephei.QL.Models.Equity.IBatesDetJumpModel_Factory 
              let BatesDoubleExpDetJumpModel = new Cephei.QL.Models.Equity.CBatesDoubleExpDetJumpModel_Factory () :> Cephei.QL.Models.Equity.IBatesDoubleExpDetJumpModel_Factory 
              let BatesDoubleExpModel = new Cephei.QL.Models.Equity.CBatesDoubleExpModel_Factory () :> Cephei.QL.Models.Equity.IBatesDoubleExpModel_Factory 
              let BatesModel = new Cephei.QL.Models.Equity.CBatesModel_Factory () :> Cephei.QL.Models.Equity.IBatesModel_Factory 
              let GJRGARCHModel = new Cephei.QL.Models.Equity.CGJRGARCHModel_Factory () :> Cephei.QL.Models.Equity.IGJRGARCHModel_Factory 
              let HestonModel = new Cephei.QL.Models.Equity.CHestonModel_Factory () :> Cephei.QL.Models.Equity.IHestonModel_Factory 
              let HestonModelHelper = new Cephei.QL.Models.Equity.CHestonModelHelper_Factory () :> Cephei.QL.Models.Equity.IHestonModelHelper_Factory 
            end

          module Marketmodels =
            begin
              let AccountingEngine = new Cephei.QL.Models.Marketmodels.CAccountingEngine_Factory () :> Cephei.QL.Models.Marketmodels.IAccountingEngine_Factory 
              let BrownianGenerator = new Cephei.QL.Models.Marketmodels.CBrownianGenerator_Factory () :> Cephei.QL.Models.Marketmodels.IBrownianGenerator_Factory 
              let BrownianGeneratorFactory = new Cephei.QL.Models.Marketmodels.CBrownianGeneratorFactory_Factory () :> Cephei.QL.Models.Marketmodels.IBrownianGeneratorFactory_Factory 
              let ConstrainedEvolver = new Cephei.QL.Models.Marketmodels.CConstrainedEvolver_Factory () :> Cephei.QL.Models.Marketmodels.IConstrainedEvolver_Factory 
              let CurveState = new Cephei.QL.Models.Marketmodels.CCurveState_Factory () :> Cephei.QL.Models.Marketmodels.ICurveState_Factory 
              let EvolutionDescription = new Cephei.QL.Models.Marketmodels.CEvolutionDescription_Factory () :> Cephei.QL.Models.Marketmodels.IEvolutionDescription_Factory 
              let HistoricalForwardRatesAnalysis = new Cephei.QL.Models.Marketmodels.CHistoricalForwardRatesAnalysis_Factory () :> Cephei.QL.Models.Marketmodels.IHistoricalForwardRatesAnalysis_Factory 
              let HistoricalRatesAnalysis = new Cephei.QL.Models.Marketmodels.CHistoricalRatesAnalysis_Factory () :> Cephei.QL.Models.Marketmodels.IHistoricalRatesAnalysis_Factory 
              let MarketModel = new Cephei.QL.Models.Marketmodels.CMarketModel_Factory () :> Cephei.QL.Models.Marketmodels.IMarketModel_Factory 
              let MarketModelDiscounter = new Cephei.QL.Models.Marketmodels.CMarketModelDiscounter_Factory () :> Cephei.QL.Models.Marketmodels.IMarketModelDiscounter_Factory 
              let MarketModelEvolver = new Cephei.QL.Models.Marketmodels.CMarketModelEvolver_Factory () :> Cephei.QL.Models.Marketmodels.IMarketModelEvolver_Factory 
              let MarketModelFactory = new Cephei.QL.Models.Marketmodels.CMarketModelFactory_Factory () :> Cephei.QL.Models.Marketmodels.IMarketModelFactory_Factory 
              let MarketModelMultiProduct = new Cephei.QL.Models.Marketmodels.CMarketModelMultiProduct_Factory () :> Cephei.QL.Models.Marketmodels.IMarketModelMultiProduct_Factory 
              let MarketModelMultiProductCashFlow = new Cephei.QL.Models.Marketmodels.CMarketModelMultiProductCashFlow_Factory () :> Cephei.QL.Models.Marketmodels.IMarketModelMultiProductCashFlow_Factory 
              let MarketModelPathwiseDiscounter = new Cephei.QL.Models.Marketmodels.CMarketModelPathwiseDiscounter_Factory () :> Cephei.QL.Models.Marketmodels.IMarketModelPathwiseDiscounter_Factory 
              let MarketModelPathwiseMultiProduct = new Cephei.QL.Models.Marketmodels.CMarketModelPathwiseMultiProduct_Factory () :> Cephei.QL.Models.Marketmodels.IMarketModelPathwiseMultiProduct_Factory 
              let MarketModelPathwiseMultiProductCashFlow = new Cephei.QL.Models.Marketmodels.CMarketModelPathwiseMultiProductCashFlow_Factory () :> Cephei.QL.Models.Marketmodels.IMarketModelPathwiseMultiProductCashFlow_Factory 
              let PathwiseAccountingEngine = new Cephei.QL.Models.Marketmodels.CPathwiseAccountingEngine_Factory () :> Cephei.QL.Models.Marketmodels.IPathwiseAccountingEngine_Factory 
              let PathwiseVegasAccountingEngine = new Cephei.QL.Models.Marketmodels.CPathwiseVegasAccountingEngine_Factory () :> Cephei.QL.Models.Marketmodels.IPathwiseVegasAccountingEngine_Factory 
              let PiecewiseConstantCorrelation = new Cephei.QL.Models.Marketmodels.CPiecewiseConstantCorrelation_Factory () :> Cephei.QL.Models.Marketmodels.IPiecewiseConstantCorrelation_Factory 
              let SwapForwardMappings = new Cephei.QL.Models.Marketmodels.CSwapForwardMappings_Factory () :> Cephei.QL.Models.Marketmodels.ISwapForwardMappings_Factory 

              module Browniangenerators =
                begin
                  let MTBrownianGenerator = new Cephei.QL.Models.Marketmodels.Browniangenerators.CMTBrownianGenerator_Factory () :> Cephei.QL.Models.Marketmodels.Browniangenerators.IMTBrownianGenerator_Factory 
                  let MTBrownianGeneratorFactory = new Cephei.QL.Models.Marketmodels.Browniangenerators.CMTBrownianGeneratorFactory_Factory () :> Cephei.QL.Models.Marketmodels.Browniangenerators.IMTBrownianGeneratorFactory_Factory 
                  let SobolBrownianGenerator = new Cephei.QL.Models.Marketmodels.Browniangenerators.CSobolBrownianGenerator_Factory () :> Cephei.QL.Models.Marketmodels.Browniangenerators.ISobolBrownianGenerator_Factory 
                  let SobolBrownianGeneratorFactory = new Cephei.QL.Models.Marketmodels.Browniangenerators.CSobolBrownianGeneratorFactory_Factory () :> Cephei.QL.Models.Marketmodels.Browniangenerators.ISobolBrownianGeneratorFactory_Factory 
                end

              module Callability =
                begin
                  let BermudanSwaptionExerciseValue = new Cephei.QL.Models.Marketmodels.Callability.CBermudanSwaptionExerciseValue_Factory () :> Cephei.QL.Models.Marketmodels.Callability.IBermudanSwaptionExerciseValue_Factory 
                  let LongstaffSchwartzExerciseStrategy = new Cephei.QL.Models.Marketmodels.Callability.CLongstaffSchwartzExerciseStrategy_Factory () :> Cephei.QL.Models.Marketmodels.Callability.ILongstaffSchwartzExerciseStrategy_Factory 
                  let MarketModelBasisSystem = new Cephei.QL.Models.Marketmodels.Callability.CMarketModelBasisSystem_Factory () :> Cephei.QL.Models.Marketmodels.Callability.IMarketModelBasisSystem_Factory 
                  let MarketModelExerciseValue = new Cephei.QL.Models.Marketmodels.Callability.CMarketModelExerciseValue_Factory () :> Cephei.QL.Models.Marketmodels.Callability.IMarketModelExerciseValue_Factory 
                  let MarketModelNodeDataProvider = new Cephei.QL.Models.Marketmodels.Callability.CMarketModelNodeDataProvider_Factory () :> Cephei.QL.Models.Marketmodels.Callability.IMarketModelNodeDataProvider_Factory 
                  let MarketModelParametricExercise = new Cephei.QL.Models.Marketmodels.Callability.CMarketModelParametricExercise_Factory () :> Cephei.QL.Models.Marketmodels.Callability.IMarketModelParametricExercise_Factory 
                  let NothingExerciseValue = new Cephei.QL.Models.Marketmodels.Callability.CNothingExerciseValue_Factory () :> Cephei.QL.Models.Marketmodels.Callability.INothingExerciseValue_Factory 
                  let ParametricExerciseAdapter = new Cephei.QL.Models.Marketmodels.Callability.CParametricExerciseAdapter_Factory () :> Cephei.QL.Models.Marketmodels.Callability.IParametricExerciseAdapter_Factory 
                  let SwapBasisSystem = new Cephei.QL.Models.Marketmodels.Callability.CSwapBasisSystem_Factory () :> Cephei.QL.Models.Marketmodels.Callability.ISwapBasisSystem_Factory 
                  let SwapRateTrigger = new Cephei.QL.Models.Marketmodels.Callability.CSwapRateTrigger_Factory () :> Cephei.QL.Models.Marketmodels.Callability.ISwapRateTrigger_Factory 
                  let TriggeredSwapExercise = new Cephei.QL.Models.Marketmodels.Callability.CTriggeredSwapExercise_Factory () :> Cephei.QL.Models.Marketmodels.Callability.ITriggeredSwapExercise_Factory 
                  let UpperBoundEngine = new Cephei.QL.Models.Marketmodels.Callability.CUpperBoundEngine_Factory () :> Cephei.QL.Models.Marketmodels.Callability.IUpperBoundEngine_Factory 
                end

              module Correlations =
                begin
                  let CotSwapFromFwdCorrelation = new Cephei.QL.Models.Marketmodels.Correlations.CCotSwapFromFwdCorrelation_Factory () :> Cephei.QL.Models.Marketmodels.Correlations.ICotSwapFromFwdCorrelation_Factory 
                  let ExponentialForwardCorrelation = new Cephei.QL.Models.Marketmodels.Correlations.CExponentialForwardCorrelation_Factory () :> Cephei.QL.Models.Marketmodels.Correlations.IExponentialForwardCorrelation_Factory 
                  let TimeHomogeneousForwardCorrelation = new Cephei.QL.Models.Marketmodels.Correlations.CTimeHomogeneousForwardCorrelation_Factory () :> Cephei.QL.Models.Marketmodels.Correlations.ITimeHomogeneousForwardCorrelation_Factory 
                end

              module Curvestates =
                begin
                  let CMSwapCurveState = new Cephei.QL.Models.Marketmodels.Curvestates.CCMSwapCurveState_Factory () :> Cephei.QL.Models.Marketmodels.Curvestates.ICMSwapCurveState_Factory 
                  let CoterminalSwapCurveState = new Cephei.QL.Models.Marketmodels.Curvestates.CCoterminalSwapCurveState_Factory () :> Cephei.QL.Models.Marketmodels.Curvestates.ICoterminalSwapCurveState_Factory 
                  let LMMCurveState = new Cephei.QL.Models.Marketmodels.Curvestates.CLMMCurveState_Factory () :> Cephei.QL.Models.Marketmodels.Curvestates.ILMMCurveState_Factory 
                end

              module Driftcomputation =
                begin
                  let CMSMMDriftCalculator = new Cephei.QL.Models.Marketmodels.Driftcomputation.CCMSMMDriftCalculator_Factory () :> Cephei.QL.Models.Marketmodels.Driftcomputation.ICMSMMDriftCalculator_Factory 
                  let LMMDriftCalculator = new Cephei.QL.Models.Marketmodels.Driftcomputation.CLMMDriftCalculator_Factory () :> Cephei.QL.Models.Marketmodels.Driftcomputation.ILMMDriftCalculator_Factory 
                  let LMMNormalDriftCalculator = new Cephei.QL.Models.Marketmodels.Driftcomputation.CLMMNormalDriftCalculator_Factory () :> Cephei.QL.Models.Marketmodels.Driftcomputation.ILMMNormalDriftCalculator_Factory 
                  let SMMDriftCalculator = new Cephei.QL.Models.Marketmodels.Driftcomputation.CSMMDriftCalculator_Factory () :> Cephei.QL.Models.Marketmodels.Driftcomputation.ISMMDriftCalculator_Factory 
                end

              module Evolvers =
                begin
                  let LogNormalCmSwapRatePc = new Cephei.QL.Models.Marketmodels.Evolvers.CLogNormalCmSwapRatePc_Factory () :> Cephei.QL.Models.Marketmodels.Evolvers.ILogNormalCmSwapRatePc_Factory 
                  let LogNormalCotSwapRatePc = new Cephei.QL.Models.Marketmodels.Evolvers.CLogNormalCotSwapRatePc_Factory () :> Cephei.QL.Models.Marketmodels.Evolvers.ILogNormalCotSwapRatePc_Factory 
                  let LogNormalFwdRateBalland = new Cephei.QL.Models.Marketmodels.Evolvers.CLogNormalFwdRateBalland_Factory () :> Cephei.QL.Models.Marketmodels.Evolvers.ILogNormalFwdRateBalland_Factory 
                  let LogNormalFwdRateEuler = new Cephei.QL.Models.Marketmodels.Evolvers.CLogNormalFwdRateEuler_Factory () :> Cephei.QL.Models.Marketmodels.Evolvers.ILogNormalFwdRateEuler_Factory 
                  let LogNormalFwdRateEulerConstrained = new Cephei.QL.Models.Marketmodels.Evolvers.CLogNormalFwdRateEulerConstrained_Factory () :> Cephei.QL.Models.Marketmodels.Evolvers.ILogNormalFwdRateEulerConstrained_Factory 
                  let LogNormalFwdRateiBalland = new Cephei.QL.Models.Marketmodels.Evolvers.CLogNormalFwdRateiBalland_Factory () :> Cephei.QL.Models.Marketmodels.Evolvers.ILogNormalFwdRateiBalland_Factory 
                  let LogNormalFwdRateIpc = new Cephei.QL.Models.Marketmodels.Evolvers.CLogNormalFwdRateIpc_Factory () :> Cephei.QL.Models.Marketmodels.Evolvers.ILogNormalFwdRateIpc_Factory 
                  let LogNormalFwdRatePc = new Cephei.QL.Models.Marketmodels.Evolvers.CLogNormalFwdRatePc_Factory () :> Cephei.QL.Models.Marketmodels.Evolvers.ILogNormalFwdRatePc_Factory 
                  let MarketModelVolProcess = new Cephei.QL.Models.Marketmodels.Evolvers.CMarketModelVolProcess_Factory () :> Cephei.QL.Models.Marketmodels.Evolvers.IMarketModelVolProcess_Factory 
                  let NormalFwdRatePc = new Cephei.QL.Models.Marketmodels.Evolvers.CNormalFwdRatePc_Factory () :> Cephei.QL.Models.Marketmodels.Evolvers.INormalFwdRatePc_Factory 
                  let SVDDFwdRatePc = new Cephei.QL.Models.Marketmodels.Evolvers.CSVDDFwdRatePc_Factory () :> Cephei.QL.Models.Marketmodels.Evolvers.ISVDDFwdRatePc_Factory 

                  module Volprocesses =
                    begin
                      let SquareRootAndersen = new Cephei.QL.Models.Marketmodels.Evolvers.Volprocesses.CSquareRootAndersen_Factory () :> Cephei.QL.Models.Marketmodels.Evolvers.Volprocesses.ISquareRootAndersen_Factory 
                    end
                end

              module Models =
                begin
                  let AbcdVol = new Cephei.QL.Models.Marketmodels.Models.CAbcdVol_Factory () :> Cephei.QL.Models.Marketmodels.Models.IAbcdVol_Factory 
                  let AlphaFinder = new Cephei.QL.Models.Marketmodels.Models.CAlphaFinder_Factory () :> Cephei.QL.Models.Marketmodels.Models.IAlphaFinder_Factory 
                  let AlphaForm = new Cephei.QL.Models.Marketmodels.Models.CAlphaForm_Factory () :> Cephei.QL.Models.Marketmodels.Models.IAlphaForm_Factory 
                  let AlphaFormInverseLinear = new Cephei.QL.Models.Marketmodels.Models.CAlphaFormInverseLinear_Factory () :> Cephei.QL.Models.Marketmodels.Models.IAlphaFormInverseLinear_Factory 
                  let AlphaFormLinearHyperbolic = new Cephei.QL.Models.Marketmodels.Models.CAlphaFormLinearHyperbolic_Factory () :> Cephei.QL.Models.Marketmodels.Models.IAlphaFormLinearHyperbolic_Factory 
                  let CotSwapToFwdAdapter = new Cephei.QL.Models.Marketmodels.Models.CCotSwapToFwdAdapter_Factory () :> Cephei.QL.Models.Marketmodels.Models.ICotSwapToFwdAdapter_Factory 
                  let CotSwapToFwdAdapterFactory = new Cephei.QL.Models.Marketmodels.Models.CCotSwapToFwdAdapterFactory_Factory () :> Cephei.QL.Models.Marketmodels.Models.ICotSwapToFwdAdapterFactory_Factory 
                  let CTSMMCapletAlphaFormCalibration = new Cephei.QL.Models.Marketmodels.Models.CCTSMMCapletAlphaFormCalibration_Factory () :> Cephei.QL.Models.Marketmodels.Models.ICTSMMCapletAlphaFormCalibration_Factory 
                  let CTSMMCapletCalibration = new Cephei.QL.Models.Marketmodels.Models.CCTSMMCapletCalibration_Factory () :> Cephei.QL.Models.Marketmodels.Models.ICTSMMCapletCalibration_Factory 
                  let CTSMMCapletMaxHomogeneityCalibration = new Cephei.QL.Models.Marketmodels.Models.CCTSMMCapletMaxHomogeneityCalibration_Factory () :> Cephei.QL.Models.Marketmodels.Models.ICTSMMCapletMaxHomogeneityCalibration_Factory 
                  let CTSMMCapletOriginalCalibration = new Cephei.QL.Models.Marketmodels.Models.CCTSMMCapletOriginalCalibration_Factory () :> Cephei.QL.Models.Marketmodels.Models.ICTSMMCapletOriginalCalibration_Factory 
                  let FlatVol = new Cephei.QL.Models.Marketmodels.Models.CFlatVol_Factory () :> Cephei.QL.Models.Marketmodels.Models.IFlatVol_Factory 
                  let FlatVolFactory = new Cephei.QL.Models.Marketmodels.Models.CFlatVolFactory_Factory () :> Cephei.QL.Models.Marketmodels.Models.IFlatVolFactory_Factory 
                  let FwdPeriodAdapter = new Cephei.QL.Models.Marketmodels.Models.CFwdPeriodAdapter_Factory () :> Cephei.QL.Models.Marketmodels.Models.IFwdPeriodAdapter_Factory 
                  let FwdToCotSwapAdapter = new Cephei.QL.Models.Marketmodels.Models.CFwdToCotSwapAdapter_Factory () :> Cephei.QL.Models.Marketmodels.Models.IFwdToCotSwapAdapter_Factory 
                  let FwdToCotSwapAdapterFactory = new Cephei.QL.Models.Marketmodels.Models.CFwdToCotSwapAdapterFactory_Factory () :> Cephei.QL.Models.Marketmodels.Models.IFwdToCotSwapAdapterFactory_Factory 
                  let PiecewiseConstantAbcdVariance = new Cephei.QL.Models.Marketmodels.Models.CPiecewiseConstantAbcdVariance_Factory () :> Cephei.QL.Models.Marketmodels.Models.IPiecewiseConstantAbcdVariance_Factory 
                  let PiecewiseConstantVariance = new Cephei.QL.Models.Marketmodels.Models.CPiecewiseConstantVariance_Factory () :> Cephei.QL.Models.Marketmodels.Models.IPiecewiseConstantVariance_Factory 
                  let PseudoRootFacade = new Cephei.QL.Models.Marketmodels.Models.CPseudoRootFacade_Factory () :> Cephei.QL.Models.Marketmodels.Models.IPseudoRootFacade_Factory 
                  let VolatilityInterpolationSpecifier = new Cephei.QL.Models.Marketmodels.Models.CVolatilityInterpolationSpecifier_Factory () :> Cephei.QL.Models.Marketmodels.Models.IVolatilityInterpolationSpecifier_Factory 
                  let VolatilityInterpolationSpecifierabcd = new Cephei.QL.Models.Marketmodels.Models.CVolatilityInterpolationSpecifierabcd_Factory () :> Cephei.QL.Models.Marketmodels.Models.IVolatilityInterpolationSpecifierabcd_Factory 
                end

              module Pathwisegreeks =
                begin
                  let CapPseudoDerivative = new Cephei.QL.Models.Marketmodels.Pathwisegreeks.CCapPseudoDerivative_Factory () :> Cephei.QL.Models.Marketmodels.Pathwisegreeks.ICapPseudoDerivative_Factory 
                  let OrthogonalizedBumpFinder = new Cephei.QL.Models.Marketmodels.Pathwisegreeks.COrthogonalizedBumpFinder_Factory () :> Cephei.QL.Models.Marketmodels.Pathwisegreeks.IOrthogonalizedBumpFinder_Factory 
                  let RatePseudoRootJacobian = new Cephei.QL.Models.Marketmodels.Pathwisegreeks.CRatePseudoRootJacobian_Factory () :> Cephei.QL.Models.Marketmodels.Pathwisegreeks.IRatePseudoRootJacobian_Factory 
                  let RatePseudoRootJacobianNumerical = new Cephei.QL.Models.Marketmodels.Pathwisegreeks.CRatePseudoRootJacobianNumerical_Factory () :> Cephei.QL.Models.Marketmodels.Pathwisegreeks.IRatePseudoRootJacobianNumerical_Factory 
                  let SwaptionPseudoDerivative = new Cephei.QL.Models.Marketmodels.Pathwisegreeks.CSwaptionPseudoDerivative_Factory () :> Cephei.QL.Models.Marketmodels.Pathwisegreeks.ISwaptionPseudoDerivative_Factory 
                  let VegaBumpCluster = new Cephei.QL.Models.Marketmodels.Pathwisegreeks.CVegaBumpCluster_Factory () :> Cephei.QL.Models.Marketmodels.Pathwisegreeks.IVegaBumpCluster_Factory 
                  let VegaBumpCollection = new Cephei.QL.Models.Marketmodels.Pathwisegreeks.CVegaBumpCollection_Factory () :> Cephei.QL.Models.Marketmodels.Pathwisegreeks.IVegaBumpCollection_Factory 
                  let VolatilityBumpInstrumentJacobian = new Cephei.QL.Models.Marketmodels.Pathwisegreeks.CVolatilityBumpInstrumentJacobian_Factory () :> Cephei.QL.Models.Marketmodels.Pathwisegreeks.IVolatilityBumpInstrumentJacobian_Factory 
                  let VolatilityBumpInstrumentJacobianCap = new Cephei.QL.Models.Marketmodels.Pathwisegreeks.CVolatilityBumpInstrumentJacobianCap_Factory () :> Cephei.QL.Models.Marketmodels.Pathwisegreeks.IVolatilityBumpInstrumentJacobianCap_Factory 
                  let VolatilityBumpInstrumentJacobianSwaption = new Cephei.QL.Models.Marketmodels.Pathwisegreeks.CVolatilityBumpInstrumentJacobianSwaption_Factory () :> Cephei.QL.Models.Marketmodels.Pathwisegreeks.IVolatilityBumpInstrumentJacobianSwaption_Factory 
                end

              module Products =
                begin
                  let MarketModelComposite = new Cephei.QL.Models.Marketmodels.Products.CMarketModelComposite_Factory () :> Cephei.QL.Models.Marketmodels.Products.IMarketModelComposite_Factory 
                  let MultiProductComposite = new Cephei.QL.Models.Marketmodels.Products.CMultiProductComposite_Factory () :> Cephei.QL.Models.Marketmodels.Products.IMultiProductComposite_Factory 
                  let MultiProductMultiStep = new Cephei.QL.Models.Marketmodels.Products.CMultiProductMultiStep_Factory () :> Cephei.QL.Models.Marketmodels.Products.IMultiProductMultiStep_Factory 
                  let MultiProductOneStep = new Cephei.QL.Models.Marketmodels.Products.CMultiProductOneStep_Factory () :> Cephei.QL.Models.Marketmodels.Products.IMultiProductOneStep_Factory 
                  let SingleProductComposite = new Cephei.QL.Models.Marketmodels.Products.CSingleProductComposite_Factory () :> Cephei.QL.Models.Marketmodels.Products.ISingleProductComposite_Factory 

                  module Multistep =
                    begin
                      let CallSpecifiedMultiProduct = new Cephei.QL.Models.Marketmodels.Products.Multistep.CCallSpecifiedMultiProduct_Factory () :> Cephei.QL.Models.Marketmodels.Products.Multistep.ICallSpecifiedMultiProduct_Factory 
                      let ExerciseAdapter = new Cephei.QL.Models.Marketmodels.Products.Multistep.CExerciseAdapter_Factory () :> Cephei.QL.Models.Marketmodels.Products.Multistep.IExerciseAdapter_Factory 
                      let MarketModelCashRebate = new Cephei.QL.Models.Marketmodels.Products.Multistep.CMarketModelCashRebate_Factory () :> Cephei.QL.Models.Marketmodels.Products.Multistep.IMarketModelCashRebate_Factory 
                      let MultiProductPathwiseWrapper = new Cephei.QL.Models.Marketmodels.Products.Multistep.CMultiProductPathwiseWrapper_Factory () :> Cephei.QL.Models.Marketmodels.Products.Multistep.IMultiProductPathwiseWrapper_Factory 
                      let MultiStepCoinitialSwaps = new Cephei.QL.Models.Marketmodels.Products.Multistep.CMultiStepCoinitialSwaps_Factory () :> Cephei.QL.Models.Marketmodels.Products.Multistep.IMultiStepCoinitialSwaps_Factory 
                      let MultiStepCoterminalSwaps = new Cephei.QL.Models.Marketmodels.Products.Multistep.CMultiStepCoterminalSwaps_Factory () :> Cephei.QL.Models.Marketmodels.Products.Multistep.IMultiStepCoterminalSwaps_Factory 
                      let MultiStepCoterminalSwaptions = new Cephei.QL.Models.Marketmodels.Products.Multistep.CMultiStepCoterminalSwaptions_Factory () :> Cephei.QL.Models.Marketmodels.Products.Multistep.IMultiStepCoterminalSwaptions_Factory 
                      let MultiStepForwards = new Cephei.QL.Models.Marketmodels.Products.Multistep.CMultiStepForwards_Factory () :> Cephei.QL.Models.Marketmodels.Products.Multistep.IMultiStepForwards_Factory 
                      let MultiStepInverseFloater = new Cephei.QL.Models.Marketmodels.Products.Multistep.CMultiStepInverseFloater_Factory () :> Cephei.QL.Models.Marketmodels.Products.Multistep.IMultiStepInverseFloater_Factory 
                      let MultiStepNothing = new Cephei.QL.Models.Marketmodels.Products.Multistep.CMultiStepNothing_Factory () :> Cephei.QL.Models.Marketmodels.Products.Multistep.IMultiStepNothing_Factory 
                      let MultiStepOptionlets = new Cephei.QL.Models.Marketmodels.Products.Multistep.CMultiStepOptionlets_Factory () :> Cephei.QL.Models.Marketmodels.Products.Multistep.IMultiStepOptionlets_Factory 
                      let MultiStepPeriodCapletSwaptions = new Cephei.QL.Models.Marketmodels.Products.Multistep.CMultiStepPeriodCapletSwaptions_Factory () :> Cephei.QL.Models.Marketmodels.Products.Multistep.IMultiStepPeriodCapletSwaptions_Factory 
                      let MultiStepRatchet = new Cephei.QL.Models.Marketmodels.Products.Multistep.CMultiStepRatchet_Factory () :> Cephei.QL.Models.Marketmodels.Products.Multistep.IMultiStepRatchet_Factory 
                      let MultiStepSwap = new Cephei.QL.Models.Marketmodels.Products.Multistep.CMultiStepSwap_Factory () :> Cephei.QL.Models.Marketmodels.Products.Multistep.IMultiStepSwap_Factory 
                      let MultiStepSwaption = new Cephei.QL.Models.Marketmodels.Products.Multistep.CMultiStepSwaption_Factory () :> Cephei.QL.Models.Marketmodels.Products.Multistep.IMultiStepSwaption_Factory 
                    end

                  module Onestep =
                    begin
                      let OneStepCoinitialSwaps = new Cephei.QL.Models.Marketmodels.Products.Onestep.COneStepCoinitialSwaps_Factory () :> Cephei.QL.Models.Marketmodels.Products.Onestep.IOneStepCoinitialSwaps_Factory 
                      let OneStepCoterminalSwaps = new Cephei.QL.Models.Marketmodels.Products.Onestep.COneStepCoterminalSwaps_Factory () :> Cephei.QL.Models.Marketmodels.Products.Onestep.IOneStepCoterminalSwaps_Factory 
                      let OneStepForwards = new Cephei.QL.Models.Marketmodels.Products.Onestep.COneStepForwards_Factory () :> Cephei.QL.Models.Marketmodels.Products.Onestep.IOneStepForwards_Factory 
                      let OneStepOptionlets = new Cephei.QL.Models.Marketmodels.Products.Onestep.COneStepOptionlets_Factory () :> Cephei.QL.Models.Marketmodels.Products.Onestep.IOneStepOptionlets_Factory 
                    end

                  module Pathwise =
                    begin
                      let CallSpecifiedPathwiseMultiProduct = new Cephei.QL.Models.Marketmodels.Products.Pathwise.CCallSpecifiedPathwiseMultiProduct_Factory () :> Cephei.QL.Models.Marketmodels.Products.Pathwise.ICallSpecifiedPathwiseMultiProduct_Factory 
                      let MarketModelPathwiseCashRebate = new Cephei.QL.Models.Marketmodels.Products.Pathwise.CMarketModelPathwiseCashRebate_Factory () :> Cephei.QL.Models.Marketmodels.Products.Pathwise.IMarketModelPathwiseCashRebate_Factory 
                      let MarketModelPathwiseCoterminalSwaptionsDeflated = new Cephei.QL.Models.Marketmodels.Products.Pathwise.CMarketModelPathwiseCoterminalSwaptionsDeflated_Factory () :> Cephei.QL.Models.Marketmodels.Products.Pathwise.IMarketModelPathwiseCoterminalSwaptionsDeflated_Factory 
                      let MarketModelPathwiseCoterminalSwaptionsNumericalDeflated = new Cephei.QL.Models.Marketmodels.Products.Pathwise.CMarketModelPathwiseCoterminalSwaptionsNumericalDeflated_Factory () :> Cephei.QL.Models.Marketmodels.Products.Pathwise.IMarketModelPathwiseCoterminalSwaptionsNumericalDeflated_Factory 
                      let MarketModelPathwiseInverseFloater = new Cephei.QL.Models.Marketmodels.Products.Pathwise.CMarketModelPathwiseInverseFloater_Factory () :> Cephei.QL.Models.Marketmodels.Products.Pathwise.IMarketModelPathwiseInverseFloater_Factory 
                      let MarketModelPathwiseMultiCaplet = new Cephei.QL.Models.Marketmodels.Products.Pathwise.CMarketModelPathwiseMultiCaplet_Factory () :> Cephei.QL.Models.Marketmodels.Products.Pathwise.IMarketModelPathwiseMultiCaplet_Factory 
                      let MarketModelPathwiseMultiDeflatedCap = new Cephei.QL.Models.Marketmodels.Products.Pathwise.CMarketModelPathwiseMultiDeflatedCap_Factory () :> Cephei.QL.Models.Marketmodels.Products.Pathwise.IMarketModelPathwiseMultiDeflatedCap_Factory 
                      let MarketModelPathwiseMultiDeflatedCaplet = new Cephei.QL.Models.Marketmodels.Products.Pathwise.CMarketModelPathwiseMultiDeflatedCaplet_Factory () :> Cephei.QL.Models.Marketmodels.Products.Pathwise.IMarketModelPathwiseMultiDeflatedCaplet_Factory 
                      let MarketModelPathwiseSwap = new Cephei.QL.Models.Marketmodels.Products.Pathwise.CMarketModelPathwiseSwap_Factory () :> Cephei.QL.Models.Marketmodels.Products.Pathwise.IMarketModelPathwiseSwap_Factory 
                    end
                end
            end

          module Shortrate =
            begin
              let OneFactorAffineModel = new Cephei.QL.Models.Shortrate.COneFactorAffineModel_Factory () :> Cephei.QL.Models.Shortrate.IOneFactorAffineModel_Factory 

              module Calibrationhelpers =
                begin
                  let CapHelper = new Cephei.QL.Models.Shortrate.Calibrationhelpers.CCapHelper_Factory () :> Cephei.QL.Models.Shortrate.Calibrationhelpers.ICapHelper_Factory 
                  let SwaptionHelper = new Cephei.QL.Models.Shortrate.Calibrationhelpers.CSwaptionHelper_Factory () :> Cephei.QL.Models.Shortrate.Calibrationhelpers.ISwaptionHelper_Factory 
                end

              module Onefactormodels =
                begin
                  let BlackKarasinski = new Cephei.QL.Models.Shortrate.Onefactormodels.CBlackKarasinski_Factory () :> Cephei.QL.Models.Shortrate.Onefactormodels.IBlackKarasinski_Factory 
                  let HullWhite = new Cephei.QL.Models.Shortrate.Onefactormodels.CHullWhite_Factory () :> Cephei.QL.Models.Shortrate.Onefactormodels.IHullWhite_Factory 
                  let Vasicek = new Cephei.QL.Models.Shortrate.Onefactormodels.CVasicek_Factory () :> Cephei.QL.Models.Shortrate.Onefactormodels.IVasicek_Factory 
                end

              module Twofactormodels =
                begin
                end
            end

          module Volatility =
            begin
              let ConstantEstimator = new Cephei.QL.Models.Volatility.CConstantEstimator_Factory () :> Cephei.QL.Models.Volatility.IConstantEstimator_Factory 
              let Garch11 = new Cephei.QL.Models.Volatility.CGarch11_Factory () :> Cephei.QL.Models.Volatility.IGarch11_Factory 
              let GarmanKlassAbstract = new Cephei.QL.Models.Volatility.CGarmanKlassAbstract_Factory () :> Cephei.QL.Models.Volatility.IGarmanKlassAbstract_Factory 
              let GarmanKlassSigma1 = new Cephei.QL.Models.Volatility.CGarmanKlassSigma1_Factory () :> Cephei.QL.Models.Volatility.IGarmanKlassSigma1_Factory 
              let GarmanKlassSigma3 = new Cephei.QL.Models.Volatility.CGarmanKlassSigma3_Factory () :> Cephei.QL.Models.Volatility.IGarmanKlassSigma3_Factory 
              let GarmanKlassSigma4 = new Cephei.QL.Models.Volatility.CGarmanKlassSigma4_Factory () :> Cephei.QL.Models.Volatility.IGarmanKlassSigma4_Factory 
              let GarmanKlassSigma5 = new Cephei.QL.Models.Volatility.CGarmanKlassSigma5_Factory () :> Cephei.QL.Models.Volatility.IGarmanKlassSigma5_Factory 
              let GarmanKlassSigma6 = new Cephei.QL.Models.Volatility.CGarmanKlassSigma6_Factory () :> Cephei.QL.Models.Volatility.IGarmanKlassSigma6_Factory 
              let GarmanKlassSimpleSigma = new Cephei.QL.Models.Volatility.CGarmanKlassSimpleSigma_Factory () :> Cephei.QL.Models.Volatility.IGarmanKlassSimpleSigma_Factory 
              let ParkinsonSigma = new Cephei.QL.Models.Volatility.CParkinsonSigma_Factory () :> Cephei.QL.Models.Volatility.IParkinsonSigma_Factory 
              let SimpleLocalEstimator = new Cephei.QL.Models.Volatility.CSimpleLocalEstimator_Factory () :> Cephei.QL.Models.Volatility.ISimpleLocalEstimator_Factory 
            end
        end

      module Patterns =
        begin
        end

      module Pricingengines =
        begin
          let AmericanPayoffAtExpiry = new Cephei.QL.Pricingengines.CAmericanPayoffAtExpiry_Factory () :> Cephei.QL.Pricingengines.IAmericanPayoffAtExpiry_Factory 
          let AmericanPayoffAtHit = new Cephei.QL.Pricingengines.CAmericanPayoffAtHit_Factory () :> Cephei.QL.Pricingengines.IAmericanPayoffAtHit_Factory 
          let BlackCalculator = new Cephei.QL.Pricingengines.CBlackCalculator_Factory () :> Cephei.QL.Pricingengines.IBlackCalculator_Factory 
          let BlackScholesCalculator = new Cephei.QL.Pricingengines.CBlackScholesCalculator_Factory () :> Cephei.QL.Pricingengines.IBlackScholesCalculator_Factory 

          module Asian =
            begin
              let AnalyticContinuousGeometricAveragePriceAsianEngine = new Cephei.QL.Pricingengines.Asian.CAnalyticContinuousGeometricAveragePriceAsianEngine_Factory () :> Cephei.QL.Pricingengines.Asian.IAnalyticContinuousGeometricAveragePriceAsianEngine_Factory 
              let AnalyticDiscreteGeometricAveragePriceAsianEngine = new Cephei.QL.Pricingengines.Asian.CAnalyticDiscreteGeometricAveragePriceAsianEngine_Factory () :> Cephei.QL.Pricingengines.Asian.IAnalyticDiscreteGeometricAveragePriceAsianEngine_Factory 
              let AnalyticDiscreteGeometricAverageStrikeAsianEngine = new Cephei.QL.Pricingengines.Asian.CAnalyticDiscreteGeometricAverageStrikeAsianEngine_Factory () :> Cephei.QL.Pricingengines.Asian.IAnalyticDiscreteGeometricAverageStrikeAsianEngine_Factory 
              let ArithmeticAPOPathPricer = new Cephei.QL.Pricingengines.Asian.CArithmeticAPOPathPricer_Factory () :> Cephei.QL.Pricingengines.Asian.IArithmeticAPOPathPricer_Factory 
              let ArithmeticASOPathPricer = new Cephei.QL.Pricingengines.Asian.CArithmeticASOPathPricer_Factory () :> Cephei.QL.Pricingengines.Asian.IArithmeticASOPathPricer_Factory 
              let GeometricAPOPathPricer = new Cephei.QL.Pricingengines.Asian.CGeometricAPOPathPricer_Factory () :> Cephei.QL.Pricingengines.Asian.IGeometricAPOPathPricer_Factory 
            end

          module Barrier =
            begin
              let AnalyticBarrierEngine = new Cephei.QL.Pricingengines.Barrier.CAnalyticBarrierEngine_Factory () :> Cephei.QL.Pricingengines.Barrier.IAnalyticBarrierEngine_Factory 
              let BarrierPathPricer = new Cephei.QL.Pricingengines.Barrier.CBarrierPathPricer_Factory () :> Cephei.QL.Pricingengines.Barrier.IBarrierPathPricer_Factory 
              let BiasedBarrierPathPricer = new Cephei.QL.Pricingengines.Barrier.CBiasedBarrierPathPricer_Factory () :> Cephei.QL.Pricingengines.Barrier.IBiasedBarrierPathPricer_Factory 
            end

          module Bond =
            begin
              let BondFunctions = new Cephei.QL.Pricingengines.Bond.CBondFunctions_Factory () :> Cephei.QL.Pricingengines.Bond.IBondFunctions_Factory 
              let DiscountingBondEngine = new Cephei.QL.Pricingengines.Bond.CDiscountingBondEngine_Factory () :> Cephei.QL.Pricingengines.Bond.IDiscountingBondEngine_Factory 
            end

          module Capfloor =
            begin
              let AnalyticCapFloorEngine = new Cephei.QL.Pricingengines.Capfloor.CAnalyticCapFloorEngine_Factory () :> Cephei.QL.Pricingengines.Capfloor.IAnalyticCapFloorEngine_Factory 
              let BlackCapFloorEngine = new Cephei.QL.Pricingengines.Capfloor.CBlackCapFloorEngine_Factory () :> Cephei.QL.Pricingengines.Capfloor.IBlackCapFloorEngine_Factory 
              let DiscretizedCapFloor = new Cephei.QL.Pricingengines.Capfloor.CDiscretizedCapFloor_Factory () :> Cephei.QL.Pricingengines.Capfloor.IDiscretizedCapFloor_Factory 
              let TreeCapFloorEngine = new Cephei.QL.Pricingengines.Capfloor.CTreeCapFloorEngine_Factory () :> Cephei.QL.Pricingengines.Capfloor.ITreeCapFloorEngine_Factory 
            end

          module Cliquet =
            begin
              let AnalyticCliquetEngine = new Cephei.QL.Pricingengines.Cliquet.CAnalyticCliquetEngine_Factory () :> Cephei.QL.Pricingengines.Cliquet.IAnalyticCliquetEngine_Factory 
              let AnalyticPerformanceEngine = new Cephei.QL.Pricingengines.Cliquet.CAnalyticPerformanceEngine_Factory () :> Cephei.QL.Pricingengines.Cliquet.IAnalyticPerformanceEngine_Factory 
              let PerformanceOptionPathPricer = new Cephei.QL.Pricingengines.Cliquet.CPerformanceOptionPathPricer_Factory () :> Cephei.QL.Pricingengines.Cliquet.IPerformanceOptionPathPricer_Factory 
            end

          module Credit =
            begin
              let IntegralCdsEngine = new Cephei.QL.Pricingengines.Credit.CIntegralCdsEngine_Factory () :> Cephei.QL.Pricingengines.Credit.IIntegralCdsEngine_Factory 
              let MidPointCdsEngine = new Cephei.QL.Pricingengines.Credit.CMidPointCdsEngine_Factory () :> Cephei.QL.Pricingengines.Credit.IMidPointCdsEngine_Factory 
            end

          module Forward =
            begin
              let ReplicatingVarianceSwapEngine = new Cephei.QL.Pricingengines.Forward.CReplicatingVarianceSwapEngine_Factory () :> Cephei.QL.Pricingengines.Forward.IReplicatingVarianceSwapEngine_Factory 
              let VariancePathPricer = new Cephei.QL.Pricingengines.Forward.CVariancePathPricer_Factory () :> Cephei.QL.Pricingengines.Forward.IVariancePathPricer_Factory 
            end

          module Inflation =
            begin
              let YoYInflationBachelierCapFloorEngine = new Cephei.QL.Pricingengines.Inflation.CYoYInflationBachelierCapFloorEngine_Factory () :> Cephei.QL.Pricingengines.Inflation.IYoYInflationBachelierCapFloorEngine_Factory 
              let YoYInflationBlackCapFloorEngine = new Cephei.QL.Pricingengines.Inflation.CYoYInflationBlackCapFloorEngine_Factory () :> Cephei.QL.Pricingengines.Inflation.IYoYInflationBlackCapFloorEngine_Factory 
              let YoYInflationCapFloorEngine = new Cephei.QL.Pricingengines.Inflation.CYoYInflationCapFloorEngine_Factory () :> Cephei.QL.Pricingengines.Inflation.IYoYInflationCapFloorEngine_Factory 
              let YoYInflationUnitDisplacedBlackCapFloorEngine = new Cephei.QL.Pricingengines.Inflation.CYoYInflationUnitDisplacedBlackCapFloorEngine_Factory () :> Cephei.QL.Pricingengines.Inflation.IYoYInflationUnitDisplacedBlackCapFloorEngine_Factory 
            end

          module Lookback =
            begin
              let AnalyticContinuousFixedLookbackEngine = new Cephei.QL.Pricingengines.Lookback.CAnalyticContinuousFixedLookbackEngine_Factory () :> Cephei.QL.Pricingengines.Lookback.IAnalyticContinuousFixedLookbackEngine_Factory 
              let AnalyticContinuousFloatingLookbackEngine = new Cephei.QL.Pricingengines.Lookback.CAnalyticContinuousFloatingLookbackEngine_Factory () :> Cephei.QL.Pricingengines.Lookback.IAnalyticContinuousFloatingLookbackEngine_Factory 
            end

          module Quanto =
            begin
            end

          module Swap =
            begin
              let DiscountingSwapEngine = new Cephei.QL.Pricingengines.Swap.CDiscountingSwapEngine_Factory () :> Cephei.QL.Pricingengines.Swap.IDiscountingSwapEngine_Factory 
              let DiscretizedSwap = new Cephei.QL.Pricingengines.Swap.CDiscretizedSwap_Factory () :> Cephei.QL.Pricingengines.Swap.IDiscretizedSwap_Factory 
              let TreeVanillaSwapEngine = new Cephei.QL.Pricingengines.Swap.CTreeVanillaSwapEngine_Factory () :> Cephei.QL.Pricingengines.Swap.ITreeVanillaSwapEngine_Factory 
            end

          module Swaption =
            begin
              let BlackSwaptionEngine = new Cephei.QL.Pricingengines.Swaption.CBlackSwaptionEngine_Factory () :> Cephei.QL.Pricingengines.Swaption.IBlackSwaptionEngine_Factory 
              let DiscretizedSwaption = new Cephei.QL.Pricingengines.Swaption.CDiscretizedSwaption_Factory () :> Cephei.QL.Pricingengines.Swaption.IDiscretizedSwaption_Factory 
              let JamshidianSwaptionEngine = new Cephei.QL.Pricingengines.Swaption.CJamshidianSwaptionEngine_Factory () :> Cephei.QL.Pricingengines.Swaption.IJamshidianSwaptionEngine_Factory 
              let TreeSwaptionEngine = new Cephei.QL.Pricingengines.Swaption.CTreeSwaptionEngine_Factory () :> Cephei.QL.Pricingengines.Swaption.ITreeSwaptionEngine_Factory 
            end

          module Vanilla =
            begin
              let AmericanPathPricer = new Cephei.QL.Pricingengines.Vanilla.CAmericanPathPricer_Factory () :> Cephei.QL.Pricingengines.Vanilla.IAmericanPathPricer_Factory 
              let AnalyticBSMHullWhiteEngine = new Cephei.QL.Pricingengines.Vanilla.CAnalyticBSMHullWhiteEngine_Factory () :> Cephei.QL.Pricingengines.Vanilla.IAnalyticBSMHullWhiteEngine_Factory 
              let AnalyticDigitalAmericanEngine = new Cephei.QL.Pricingengines.Vanilla.CAnalyticDigitalAmericanEngine_Factory () :> Cephei.QL.Pricingengines.Vanilla.IAnalyticDigitalAmericanEngine_Factory 
              let AnalyticDividendEuropeanEngine = new Cephei.QL.Pricingengines.Vanilla.CAnalyticDividendEuropeanEngine_Factory () :> Cephei.QL.Pricingengines.Vanilla.IAnalyticDividendEuropeanEngine_Factory 
              let AnalyticEuropeanEngine = new Cephei.QL.Pricingengines.Vanilla.CAnalyticEuropeanEngine_Factory () :> Cephei.QL.Pricingengines.Vanilla.IAnalyticEuropeanEngine_Factory 
              let AnalyticGJRGARCHEngine = new Cephei.QL.Pricingengines.Vanilla.CAnalyticGJRGARCHEngine_Factory () :> Cephei.QL.Pricingengines.Vanilla.IAnalyticGJRGARCHEngine_Factory 
              let AnalyticHestonEngine = new Cephei.QL.Pricingengines.Vanilla.CAnalyticHestonEngine_Factory () :> Cephei.QL.Pricingengines.Vanilla.IAnalyticHestonEngine_Factory 
              let AnalyticHestonHullWhiteEngine = new Cephei.QL.Pricingengines.Vanilla.CAnalyticHestonHullWhiteEngine_Factory () :> Cephei.QL.Pricingengines.Vanilla.IAnalyticHestonHullWhiteEngine_Factory 
              let BaroneAdesiWhaleyApproximationEngine = new Cephei.QL.Pricingengines.Vanilla.CBaroneAdesiWhaleyApproximationEngine_Factory () :> Cephei.QL.Pricingengines.Vanilla.IBaroneAdesiWhaleyApproximationEngine_Factory 
              let BatesDetJumpEngine = new Cephei.QL.Pricingengines.Vanilla.CBatesDetJumpEngine_Factory () :> Cephei.QL.Pricingengines.Vanilla.IBatesDetJumpEngine_Factory 
              let BatesDoubleExpDetJumpEngine = new Cephei.QL.Pricingengines.Vanilla.CBatesDoubleExpDetJumpEngine_Factory () :> Cephei.QL.Pricingengines.Vanilla.IBatesDoubleExpDetJumpEngine_Factory 
              let BatesDoubleExpEngine = new Cephei.QL.Pricingengines.Vanilla.CBatesDoubleExpEngine_Factory () :> Cephei.QL.Pricingengines.Vanilla.IBatesDoubleExpEngine_Factory 
              let BatesEngine = new Cephei.QL.Pricingengines.Vanilla.CBatesEngine_Factory () :> Cephei.QL.Pricingengines.Vanilla.IBatesEngine_Factory 
              let BjerksundStenslandApproximationEngine = new Cephei.QL.Pricingengines.Vanilla.CBjerksundStenslandApproximationEngine_Factory () :> Cephei.QL.Pricingengines.Vanilla.IBjerksundStenslandApproximationEngine_Factory 
              let DigitalPathPricer = new Cephei.QL.Pricingengines.Vanilla.CDigitalPathPricer_Factory () :> Cephei.QL.Pricingengines.Vanilla.IDigitalPathPricer_Factory 
              let DiscretizedVanillaOption = new Cephei.QL.Pricingengines.Vanilla.CDiscretizedVanillaOption_Factory () :> Cephei.QL.Pricingengines.Vanilla.IDiscretizedVanillaOption_Factory 
              let EuropeanGJRGARCHPathPricer = new Cephei.QL.Pricingengines.Vanilla.CEuropeanGJRGARCHPathPricer_Factory () :> Cephei.QL.Pricingengines.Vanilla.IEuropeanGJRGARCHPathPricer_Factory 
              let EuropeanHestonPathPricer = new Cephei.QL.Pricingengines.Vanilla.CEuropeanHestonPathPricer_Factory () :> Cephei.QL.Pricingengines.Vanilla.IEuropeanHestonPathPricer_Factory 
              let EuropeanPathPricer = new Cephei.QL.Pricingengines.Vanilla.CEuropeanPathPricer_Factory () :> Cephei.QL.Pricingengines.Vanilla.IEuropeanPathPricer_Factory 
              let FDVanillaEngine = new Cephei.QL.Pricingengines.Vanilla.CFDVanillaEngine_Factory () :> Cephei.QL.Pricingengines.Vanilla.IFDVanillaEngine_Factory 
              let HestonHullWhitePathPricer = new Cephei.QL.Pricingengines.Vanilla.CHestonHullWhitePathPricer_Factory () :> Cephei.QL.Pricingengines.Vanilla.IHestonHullWhitePathPricer_Factory 
              let IntegralEngine = new Cephei.QL.Pricingengines.Vanilla.CIntegralEngine_Factory () :> Cephei.QL.Pricingengines.Vanilla.IIntegralEngine_Factory 
              let JumpDiffusionEngine = new Cephei.QL.Pricingengines.Vanilla.CJumpDiffusionEngine_Factory () :> Cephei.QL.Pricingengines.Vanilla.IJumpDiffusionEngine_Factory 
              let JuQuadraticApproximationEngine = new Cephei.QL.Pricingengines.Vanilla.CJuQuadraticApproximationEngine_Factory () :> Cephei.QL.Pricingengines.Vanilla.IJuQuadraticApproximationEngine_Factory 
            end
        end

      module Processes =
        begin
          let BatesProcess = new Cephei.QL.Processes.CBatesProcess_Factory () :> Cephei.QL.Processes.IBatesProcess_Factory 
          let BlackProcess = new Cephei.QL.Processes.CBlackProcess_Factory () :> Cephei.QL.Processes.IBlackProcess_Factory 
          let BlackScholesMertonProcess = new Cephei.QL.Processes.CBlackScholesMertonProcess_Factory () :> Cephei.QL.Processes.IBlackScholesMertonProcess_Factory 
          let BlackScholesProcess = new Cephei.QL.Processes.CBlackScholesProcess_Factory () :> Cephei.QL.Processes.IBlackScholesProcess_Factory 
          let EndEulerDiscretization = new Cephei.QL.Processes.CEndEulerDiscretization_Factory () :> Cephei.QL.Processes.IEndEulerDiscretization_Factory 
          let ForwardMeasureProcess = new Cephei.QL.Processes.CForwardMeasureProcess_Factory () :> Cephei.QL.Processes.IForwardMeasureProcess_Factory 
          let ForwardMeasureProcess1D = new Cephei.QL.Processes.CForwardMeasureProcess1D_Factory () :> Cephei.QL.Processes.IForwardMeasureProcess1D_Factory 
          let G2ForwardProcess = new Cephei.QL.Processes.CG2ForwardProcess_Factory () :> Cephei.QL.Processes.IG2ForwardProcess_Factory 
          let G2Process = new Cephei.QL.Processes.CG2Process_Factory () :> Cephei.QL.Processes.IG2Process_Factory 
          let GarmanKohlagenProcess = new Cephei.QL.Processes.CGarmanKohlagenProcess_Factory () :> Cephei.QL.Processes.IGarmanKohlagenProcess_Factory 
          let GeneralizedBlackScholesProcess = new Cephei.QL.Processes.CGeneralizedBlackScholesProcess_Factory () :> Cephei.QL.Processes.IGeneralizedBlackScholesProcess_Factory 
          let GeometricBrownianMotionProcess = new Cephei.QL.Processes.CGeometricBrownianMotionProcess_Factory () :> Cephei.QL.Processes.IGeometricBrownianMotionProcess_Factory 
          let GJRGARCHProcess = new Cephei.QL.Processes.CGJRGARCHProcess_Factory () :> Cephei.QL.Processes.IGJRGARCHProcess_Factory 
          let HestonProcess = new Cephei.QL.Processes.CHestonProcess_Factory () :> Cephei.QL.Processes.IHestonProcess_Factory 
          let HullWhiteForwardProcess = new Cephei.QL.Processes.CHullWhiteForwardProcess_Factory () :> Cephei.QL.Processes.IHullWhiteForwardProcess_Factory 
          let HullWhiteProcess = new Cephei.QL.Processes.CHullWhiteProcess_Factory () :> Cephei.QL.Processes.IHullWhiteProcess_Factory 
          let HybridHestonHullWhiteProcess = new Cephei.QL.Processes.CHybridHestonHullWhiteProcess_Factory () :> Cephei.QL.Processes.IHybridHestonHullWhiteProcess_Factory 
          let JointStochasticProcess = new Cephei.QL.Processes.CJointStochasticProcess_Factory () :> Cephei.QL.Processes.IJointStochasticProcess_Factory 
          let Merton76Process = new Cephei.QL.Processes.CMerton76Process_Factory () :> Cephei.QL.Processes.IMerton76Process_Factory 
          let OrnsteinUhlenbeckProcess = new Cephei.QL.Processes.COrnsteinUhlenbeckProcess_Factory () :> Cephei.QL.Processes.IOrnsteinUhlenbeckProcess_Factory 
          let SquareRootProcess = new Cephei.QL.Processes.CSquareRootProcess_Factory () :> Cephei.QL.Processes.ISquareRootProcess_Factory 
          let StochasticProcessArray = new Cephei.QL.Processes.CStochasticProcessArray_Factory () :> Cephei.QL.Processes.IStochasticProcessArray_Factory 
        end

      module Quotes =
        begin
          let EurodollarFuturesImpliedStdDevQuote = new Cephei.QL.Quotes.CEurodollarFuturesImpliedStdDevQuote_Factory () :> Cephei.QL.Quotes.IEurodollarFuturesImpliedStdDevQuote_Factory 
          let ForwardSwapQuote = new Cephei.QL.Quotes.CForwardSwapQuote_Factory () :> Cephei.QL.Quotes.IForwardSwapQuote_Factory 
          let ForwardValueQuote = new Cephei.QL.Quotes.CForwardValueQuote_Factory () :> Cephei.QL.Quotes.IForwardValueQuote_Factory 
          let FuturesConvAdjustmentQuote = new Cephei.QL.Quotes.CFuturesConvAdjustmentQuote_Factory () :> Cephei.QL.Quotes.IFuturesConvAdjustmentQuote_Factory 
          let ImpliedStdDevQuote = new Cephei.QL.Quotes.CImpliedStdDevQuote_Factory () :> Cephei.QL.Quotes.IImpliedStdDevQuote_Factory 
          let LastFixingQuote = new Cephei.QL.Quotes.CLastFixingQuote_Factory () :> Cephei.QL.Quotes.ILastFixingQuote_Factory 
          let SimpleQuote = new Cephei.QL.Quotes.CSimpleQuote_Factory () :> Cephei.QL.Quotes.ISimpleQuote_Factory 
        end

      module Termstructures =
        begin
          let DefaultProbabilityTermStructure = new Cephei.QL.Termstructures.CDefaultProbabilityTermStructure_Factory () :> Cephei.QL.Termstructures.IDefaultProbabilityTermStructure_Factory 
          let InflationTermStructure = new Cephei.QL.Termstructures.CInflationTermStructure_Factory () :> Cephei.QL.Termstructures.IInflationTermStructure_Factory 
          let VolatilityTermStructure = new Cephei.QL.Termstructures.CVolatilityTermStructure_Factory () :> Cephei.QL.Termstructures.IVolatilityTermStructure_Factory 
          let YieldTermStructure = new Cephei.QL.Termstructures.CYieldTermStructure_Factory () :> Cephei.QL.Termstructures.IYieldTermStructure_Factory 
          let YoYInflationTermStructure = new Cephei.QL.Termstructures.CYoYInflationTermStructure_Factory () :> Cephei.QL.Termstructures.IYoYInflationTermStructure_Factory 
          let ZeroInflationTermStructure = new Cephei.QL.Termstructures.CZeroInflationTermStructure_Factory () :> Cephei.QL.Termstructures.IZeroInflationTermStructure_Factory 

          module Credit =
            begin
              let CdsHelper = new Cephei.QL.Termstructures.Credit.CCdsHelper_Factory () :> Cephei.QL.Termstructures.Credit.ICdsHelper_Factory 
              let DefaultDensity = new Cephei.QL.Termstructures.Credit.CDefaultDensity_Factory () :> Cephei.QL.Termstructures.Credit.IDefaultDensity_Factory 
              let DefaultDensityStructure = new Cephei.QL.Termstructures.Credit.CDefaultDensityStructure_Factory () :> Cephei.QL.Termstructures.Credit.IDefaultDensityStructure_Factory 
              let FlatHazardRate = new Cephei.QL.Termstructures.Credit.CFlatHazardRate_Factory () :> Cephei.QL.Termstructures.Credit.IFlatHazardRate_Factory 
              let HazardRate = new Cephei.QL.Termstructures.Credit.CHazardRate_Factory () :> Cephei.QL.Termstructures.Credit.IHazardRate_Factory 
              let HazardRateStructure = new Cephei.QL.Termstructures.Credit.CHazardRateStructure_Factory () :> Cephei.QL.Termstructures.Credit.IHazardRateStructure_Factory 
              let SpreadCdsHelper = new Cephei.QL.Termstructures.Credit.CSpreadCdsHelper_Factory () :> Cephei.QL.Termstructures.Credit.ISpreadCdsHelper_Factory 
              let SurvivalProbability = new Cephei.QL.Termstructures.Credit.CSurvivalProbability_Factory () :> Cephei.QL.Termstructures.Credit.ISurvivalProbability_Factory 
              let SurvivalProbabilityStructure = new Cephei.QL.Termstructures.Credit.CSurvivalProbabilityStructure_Factory () :> Cephei.QL.Termstructures.Credit.ISurvivalProbabilityStructure_Factory 
              let UpfrontCdsHelper = new Cephei.QL.Termstructures.Credit.CUpfrontCdsHelper_Factory () :> Cephei.QL.Termstructures.Credit.IUpfrontCdsHelper_Factory 
            end

          module Inflation =
            begin
              let MultiplicativePriceSeasonality = new Cephei.QL.Termstructures.Inflation.CMultiplicativePriceSeasonality_Factory () :> Cephei.QL.Termstructures.Inflation.IMultiplicativePriceSeasonality_Factory 
              let Seasonality = new Cephei.QL.Termstructures.Inflation.CSeasonality_Factory () :> Cephei.QL.Termstructures.Inflation.ISeasonality_Factory 
              let YearOnYearInflationSwapHelper = new Cephei.QL.Termstructures.Inflation.CYearOnYearInflationSwapHelper_Factory () :> Cephei.QL.Termstructures.Inflation.IYearOnYearInflationSwapHelper_Factory 
              let YoYInflationTraits = new Cephei.QL.Termstructures.Inflation.CYoYInflationTraits_Factory () :> Cephei.QL.Termstructures.Inflation.IYoYInflationTraits_Factory 
              let ZeroCouponInflationSwapHelper = new Cephei.QL.Termstructures.Inflation.CZeroCouponInflationSwapHelper_Factory () :> Cephei.QL.Termstructures.Inflation.IZeroCouponInflationSwapHelper_Factory 
              let ZeroInflationTraits = new Cephei.QL.Termstructures.Inflation.CZeroInflationTraits_Factory () :> Cephei.QL.Termstructures.Inflation.IZeroInflationTraits_Factory 
            end

          module Volatility =
            begin
              let AbcdCalibration = new Cephei.QL.Termstructures.Volatility.CAbcdCalibration_Factory () :> Cephei.QL.Termstructures.Volatility.IAbcdCalibration_Factory 
              let AbcdFunction = new Cephei.QL.Termstructures.Volatility.CAbcdFunction_Factory () :> Cephei.QL.Termstructures.Volatility.IAbcdFunction_Factory 
              let AbcdSquared = new Cephei.QL.Termstructures.Volatility.CAbcdSquared_Factory () :> Cephei.QL.Termstructures.Volatility.IAbcdSquared_Factory 
              let FlatSmileSection = new Cephei.QL.Termstructures.Volatility.CFlatSmileSection_Factory () :> Cephei.QL.Termstructures.Volatility.IFlatSmileSection_Factory 
              let SabrInterpolatedSmileSection = new Cephei.QL.Termstructures.Volatility.CSabrInterpolatedSmileSection_Factory () :> Cephei.QL.Termstructures.Volatility.ISabrInterpolatedSmileSection_Factory 
              let SabrSmileSection = new Cephei.QL.Termstructures.Volatility.CSabrSmileSection_Factory () :> Cephei.QL.Termstructures.Volatility.ISabrSmileSection_Factory 
              let SmileSection = new Cephei.QL.Termstructures.Volatility.CSmileSection_Factory () :> Cephei.QL.Termstructures.Volatility.ISmileSection_Factory 
              let SpreadedSmileSection = new Cephei.QL.Termstructures.Volatility.CSpreadedSmileSection_Factory () :> Cephei.QL.Termstructures.Volatility.ISpreadedSmileSection_Factory 

              module Capfloor =
                begin
                  let CapFloorTermVolatilityStructure = new Cephei.QL.Termstructures.Volatility.Capfloor.CCapFloorTermVolatilityStructure_Factory () :> Cephei.QL.Termstructures.Volatility.Capfloor.ICapFloorTermVolatilityStructure_Factory 
                  let CapFloorTermVolCurve = new Cephei.QL.Termstructures.Volatility.Capfloor.CCapFloorTermVolCurve_Factory () :> Cephei.QL.Termstructures.Volatility.Capfloor.ICapFloorTermVolCurve_Factory 
                  let CapFloorTermVolSurface = new Cephei.QL.Termstructures.Volatility.Capfloor.CCapFloorTermVolSurface_Factory () :> Cephei.QL.Termstructures.Volatility.Capfloor.ICapFloorTermVolSurface_Factory 
                  let ConstantCapFloorTermVolatility = new Cephei.QL.Termstructures.Volatility.Capfloor.CConstantCapFloorTermVolatility_Factory () :> Cephei.QL.Termstructures.Volatility.Capfloor.IConstantCapFloorTermVolatility_Factory 
                end

              module Equityfx =
                begin
                  let BlackConstantVol = new Cephei.QL.Termstructures.Volatility.Equityfx.CBlackConstantVol_Factory () :> Cephei.QL.Termstructures.Volatility.Equityfx.IBlackConstantVol_Factory 
                  let BlackVarianceCurve = new Cephei.QL.Termstructures.Volatility.Equityfx.CBlackVarianceCurve_Factory () :> Cephei.QL.Termstructures.Volatility.Equityfx.IBlackVarianceCurve_Factory 
                  let BlackVarianceSurface = new Cephei.QL.Termstructures.Volatility.Equityfx.CBlackVarianceSurface_Factory () :> Cephei.QL.Termstructures.Volatility.Equityfx.IBlackVarianceSurface_Factory 
                  let BlackVarianceTermStructure = new Cephei.QL.Termstructures.Volatility.Equityfx.CBlackVarianceTermStructure_Factory () :> Cephei.QL.Termstructures.Volatility.Equityfx.IBlackVarianceTermStructure_Factory 
                  let BlackVolatilityTermStructure = new Cephei.QL.Termstructures.Volatility.Equityfx.CBlackVolatilityTermStructure_Factory () :> Cephei.QL.Termstructures.Volatility.Equityfx.IBlackVolatilityTermStructure_Factory 
                  let BlackVolTermStructure = new Cephei.QL.Termstructures.Volatility.Equityfx.CBlackVolTermStructure_Factory () :> Cephei.QL.Termstructures.Volatility.Equityfx.IBlackVolTermStructure_Factory 
                  let ImpliedVolTermStructure = new Cephei.QL.Termstructures.Volatility.Equityfx.CImpliedVolTermStructure_Factory () :> Cephei.QL.Termstructures.Volatility.Equityfx.IImpliedVolTermStructure_Factory 
                  let LocalConstantVol = new Cephei.QL.Termstructures.Volatility.Equityfx.CLocalConstantVol_Factory () :> Cephei.QL.Termstructures.Volatility.Equityfx.ILocalConstantVol_Factory 
                  let LocalVolCurve = new Cephei.QL.Termstructures.Volatility.Equityfx.CLocalVolCurve_Factory () :> Cephei.QL.Termstructures.Volatility.Equityfx.ILocalVolCurve_Factory 
                  let LocalVolSurface = new Cephei.QL.Termstructures.Volatility.Equityfx.CLocalVolSurface_Factory () :> Cephei.QL.Termstructures.Volatility.Equityfx.ILocalVolSurface_Factory 
                  let LocalVolTermStructure = new Cephei.QL.Termstructures.Volatility.Equityfx.CLocalVolTermStructure_Factory () :> Cephei.QL.Termstructures.Volatility.Equityfx.ILocalVolTermStructure_Factory 
                end

              module Inflation =
                begin
                  let ConstantYoYOptionletVolatility = new Cephei.QL.Termstructures.Volatility.Inflation.CConstantYoYOptionletVolatility_Factory () :> Cephei.QL.Termstructures.Volatility.Inflation.IConstantYoYOptionletVolatility_Factory 
                  let YoYOptionletVolatilitySurface = new Cephei.QL.Termstructures.Volatility.Inflation.CYoYOptionletVolatilitySurface_Factory () :> Cephei.QL.Termstructures.Volatility.Inflation.IYoYOptionletVolatilitySurface_Factory 
                end

              module Optionlet =
                begin
                  let CapletVarianceCurve = new Cephei.QL.Termstructures.Volatility.Optionlet.CCapletVarianceCurve_Factory () :> Cephei.QL.Termstructures.Volatility.Optionlet.ICapletVarianceCurve_Factory 
                  let ConstantOptionletVolatility = new Cephei.QL.Termstructures.Volatility.Optionlet.CConstantOptionletVolatility_Factory () :> Cephei.QL.Termstructures.Volatility.Optionlet.IConstantOptionletVolatility_Factory 
                  let OptionletStripper = new Cephei.QL.Termstructures.Volatility.Optionlet.COptionletStripper_Factory () :> Cephei.QL.Termstructures.Volatility.Optionlet.IOptionletStripper_Factory 
                  let OptionletStripper1 = new Cephei.QL.Termstructures.Volatility.Optionlet.COptionletStripper1_Factory () :> Cephei.QL.Termstructures.Volatility.Optionlet.IOptionletStripper1_Factory 
                  let OptionletStripper2 = new Cephei.QL.Termstructures.Volatility.Optionlet.COptionletStripper2_Factory () :> Cephei.QL.Termstructures.Volatility.Optionlet.IOptionletStripper2_Factory 
                  let OptionletVolatilityStructure = new Cephei.QL.Termstructures.Volatility.Optionlet.COptionletVolatilityStructure_Factory () :> Cephei.QL.Termstructures.Volatility.Optionlet.IOptionletVolatilityStructure_Factory 
                  let SpreadedOptionletVolatility = new Cephei.QL.Termstructures.Volatility.Optionlet.CSpreadedOptionletVolatility_Factory () :> Cephei.QL.Termstructures.Volatility.Optionlet.ISpreadedOptionletVolatility_Factory 
                  let StrippedOptionlet = new Cephei.QL.Termstructures.Volatility.Optionlet.CStrippedOptionlet_Factory () :> Cephei.QL.Termstructures.Volatility.Optionlet.IStrippedOptionlet_Factory 
                  let StrippedOptionletAdapter = new Cephei.QL.Termstructures.Volatility.Optionlet.CStrippedOptionletAdapter_Factory () :> Cephei.QL.Termstructures.Volatility.Optionlet.IStrippedOptionletAdapter_Factory 
                  let StrippedOptionletBase = new Cephei.QL.Termstructures.Volatility.Optionlet.CStrippedOptionletBase_Factory () :> Cephei.QL.Termstructures.Volatility.Optionlet.IStrippedOptionletBase_Factory 
                end

              module Swaption =
                begin
                  let CmsMarket = new Cephei.QL.Termstructures.Volatility.Swaption.CCmsMarket_Factory () :> Cephei.QL.Termstructures.Volatility.Swaption.ICmsMarket_Factory 
                  let CmsMarketCalibration = new Cephei.QL.Termstructures.Volatility.Swaption.CCmsMarketCalibration_Factory () :> Cephei.QL.Termstructures.Volatility.Swaption.ICmsMarketCalibration_Factory 
                  let ConstantSwaptionVolatility = new Cephei.QL.Termstructures.Volatility.Swaption.CConstantSwaptionVolatility_Factory () :> Cephei.QL.Termstructures.Volatility.Swaption.IConstantSwaptionVolatility_Factory 
                  let SpreadedSwaptionVolatility = new Cephei.QL.Termstructures.Volatility.Swaption.CSpreadedSwaptionVolatility_Factory () :> Cephei.QL.Termstructures.Volatility.Swaption.ISpreadedSwaptionVolatility_Factory 
                  let SwaptionVolatilityCube = new Cephei.QL.Termstructures.Volatility.Swaption.CSwaptionVolatilityCube_Factory () :> Cephei.QL.Termstructures.Volatility.Swaption.ISwaptionVolatilityCube_Factory 
                  let SwaptionVolatilityDiscrete = new Cephei.QL.Termstructures.Volatility.Swaption.CSwaptionVolatilityDiscrete_Factory () :> Cephei.QL.Termstructures.Volatility.Swaption.ISwaptionVolatilityDiscrete_Factory 
                  let SwaptionVolatilityMatrix = new Cephei.QL.Termstructures.Volatility.Swaption.CSwaptionVolatilityMatrix_Factory () :> Cephei.QL.Termstructures.Volatility.Swaption.ISwaptionVolatilityMatrix_Factory 
                  let SwaptionVolCube1 = new Cephei.QL.Termstructures.Volatility.Swaption.CSwaptionVolCube1_Factory () :> Cephei.QL.Termstructures.Volatility.Swaption.ISwaptionVolCube1_Factory 
                  let SwaptionVolCube2 = new Cephei.QL.Termstructures.Volatility.Swaption.CSwaptionVolCube2_Factory () :> Cephei.QL.Termstructures.Volatility.Swaption.ISwaptionVolCube2_Factory 
                end
            end

          module Yield =
            begin
              let BMASwapRateHelper = new Cephei.QL.Termstructures.Yield.CBMASwapRateHelper_Factory () :> Cephei.QL.Termstructures.Yield.IBMASwapRateHelper_Factory 
              let BondHelper = new Cephei.QL.Termstructures.Yield.CBondHelper_Factory () :> Cephei.QL.Termstructures.Yield.IBondHelper_Factory 
              let CubicBSplinesFitting = new Cephei.QL.Termstructures.Yield.CCubicBSplinesFitting_Factory () :> Cephei.QL.Termstructures.Yield.ICubicBSplinesFitting_Factory 
              let DatedOISRateHelper = new Cephei.QL.Termstructures.Yield.CDatedOISRateHelper_Factory () :> Cephei.QL.Termstructures.Yield.IDatedOISRateHelper_Factory 
              let DepositRateHelper = new Cephei.QL.Termstructures.Yield.CDepositRateHelper_Factory () :> Cephei.QL.Termstructures.Yield.IDepositRateHelper_Factory 
              let DriftTermStructure = new Cephei.QL.Termstructures.Yield.CDriftTermStructure_Factory () :> Cephei.QL.Termstructures.Yield.IDriftTermStructure_Factory 
              let ExponentialSplinesFitting = new Cephei.QL.Termstructures.Yield.CExponentialSplinesFitting_Factory () :> Cephei.QL.Termstructures.Yield.IExponentialSplinesFitting_Factory 
              let FixedRateBondHelper = new Cephei.QL.Termstructures.Yield.CFixedRateBondHelper_Factory () :> Cephei.QL.Termstructures.Yield.IFixedRateBondHelper_Factory 
              let FlatForward = new Cephei.QL.Termstructures.Yield.CFlatForward_Factory () :> Cephei.QL.Termstructures.Yield.IFlatForward_Factory 
              let ForwardRate = new Cephei.QL.Termstructures.Yield.CForwardRate_Factory () :> Cephei.QL.Termstructures.Yield.IForwardRate_Factory 
              let ForwardRateStructure = new Cephei.QL.Termstructures.Yield.CForwardRateStructure_Factory () :> Cephei.QL.Termstructures.Yield.IForwardRateStructure_Factory 
              let ForwardSpreadedTermStructure = new Cephei.QL.Termstructures.Yield.CForwardSpreadedTermStructure_Factory () :> Cephei.QL.Termstructures.Yield.IForwardSpreadedTermStructure_Factory 
              let FraRateHelper = new Cephei.QL.Termstructures.Yield.CFraRateHelper_Factory () :> Cephei.QL.Termstructures.Yield.IFraRateHelper_Factory 
              let FuturesRateHelper = new Cephei.QL.Termstructures.Yield.CFuturesRateHelper_Factory () :> Cephei.QL.Termstructures.Yield.IFuturesRateHelper_Factory 
              let ImpliedTermStructure = new Cephei.QL.Termstructures.Yield.CImpliedTermStructure_Factory () :> Cephei.QL.Termstructures.Yield.IImpliedTermStructure_Factory 
              let NelsonSiegelFitting = new Cephei.QL.Termstructures.Yield.CNelsonSiegelFitting_Factory () :> Cephei.QL.Termstructures.Yield.INelsonSiegelFitting_Factory 
              let OISRateHelper = new Cephei.QL.Termstructures.Yield.COISRateHelper_Factory () :> Cephei.QL.Termstructures.Yield.IOISRateHelper_Factory 
              let PiecewiseYieldCurveDiscountLogLinear = new Cephei.QL.Termstructures.Yield.CPiecewiseYieldCurveDiscountLogLinear_Factory () :> Cephei.QL.Termstructures.Yield.IPiecewiseYieldCurveDiscountLogLinear_Factory 
              let PiecewiseZeroSpreadedTermStructure = new Cephei.QL.Termstructures.Yield.CPiecewiseZeroSpreadedTermStructure_Factory () :> Cephei.QL.Termstructures.Yield.IPiecewiseZeroSpreadedTermStructure_Factory 
              let QuantoTermStructure = new Cephei.QL.Termstructures.Yield.CQuantoTermStructure_Factory () :> Cephei.QL.Termstructures.Yield.IQuantoTermStructure_Factory 
              let RateHelper = new Cephei.QL.Termstructures.Yield.CRateHelper_Factory () :> Cephei.QL.Termstructures.Yield.IRateHelper_Factory 
              let RelativeDateRateHelper = new Cephei.QL.Termstructures.Yield.CRelativeDateRateHelper_Factory () :> Cephei.QL.Termstructures.Yield.IRelativeDateRateHelper_Factory 
              let SimplePolynomialFitting = new Cephei.QL.Termstructures.Yield.CSimplePolynomialFitting_Factory () :> Cephei.QL.Termstructures.Yield.ISimplePolynomialFitting_Factory 
              let SwapRateHelper = new Cephei.QL.Termstructures.Yield.CSwapRateHelper_Factory () :> Cephei.QL.Termstructures.Yield.ISwapRateHelper_Factory 
              let ZeroSpreadedTermStructure = new Cephei.QL.Termstructures.Yield.CZeroSpreadedTermStructure_Factory () :> Cephei.QL.Termstructures.Yield.IZeroSpreadedTermStructure_Factory 
              let ZeroYield = new Cephei.QL.Termstructures.Yield.CZeroYield_Factory () :> Cephei.QL.Termstructures.Yield.IZeroYield_Factory 
              let ZeroYieldStructure = new Cephei.QL.Termstructures.Yield.CZeroYieldStructure_Factory () :> Cephei.QL.Termstructures.Yield.IZeroYieldStructure_Factory 
            end
        end

      module Times =
        begin
          let Calendar = new Cephei.QL.Times.CCalendar_Factory () :> Cephei.QL.Times.ICalendar_Factory 
          let Date = new Cephei.QL.Times.CDate_Factory () :> Cephei.QL.Times.IDate_Factory 
          let DateGeneration = new Cephei.QL.Times.CDateGeneration_Factory () :> Cephei.QL.Times.IDateGeneration_Factory 
          let DayCounter = new Cephei.QL.Times.CDayCounter_Factory () :> Cephei.QL.Times.IDayCounter_Factory 
          let ECB = new Cephei.QL.Times.CECB_Factory () :> Cephei.QL.Times.IECB_Factory 
          let IMM = new Cephei.QL.Times.CIMM_Factory () :> Cephei.QL.Times.IIMM_Factory 
          let MakeSchedule = new Cephei.QL.Times.CMakeSchedule_Factory () :> Cephei.QL.Times.IMakeSchedule_Factory 
          let Period = new Cephei.QL.Times.CPeriod_Factory () :> Cephei.QL.Times.IPeriod_Factory 
          let Schedule = new Cephei.QL.Times.CSchedule_Factory () :> Cephei.QL.Times.ISchedule_Factory 

          module Calendars =
            begin
              let Argentina = new Cephei.QL.Times.Calendars.CArgentina_Factory () :> Cephei.QL.Times.Calendars.IArgentina_Factory 
              let Australia = new Cephei.QL.Times.Calendars.CAustralia_Factory () :> Cephei.QL.Times.Calendars.IAustralia_Factory 
              let BespokeCalendar = new Cephei.QL.Times.Calendars.CBespokeCalendar_Factory () :> Cephei.QL.Times.Calendars.IBespokeCalendar_Factory 
              let Brazil = new Cephei.QL.Times.Calendars.CBrazil_Factory () :> Cephei.QL.Times.Calendars.IBrazil_Factory 
              let Canada = new Cephei.QL.Times.Calendars.CCanada_Factory () :> Cephei.QL.Times.Calendars.ICanada_Factory 
              let China = new Cephei.QL.Times.Calendars.CChina_Factory () :> Cephei.QL.Times.Calendars.IChina_Factory 
              let CzechRepublic = new Cephei.QL.Times.Calendars.CCzechRepublic_Factory () :> Cephei.QL.Times.Calendars.ICzechRepublic_Factory 
              let Denmark = new Cephei.QL.Times.Calendars.CDenmark_Factory () :> Cephei.QL.Times.Calendars.IDenmark_Factory 
              let Finland = new Cephei.QL.Times.Calendars.CFinland_Factory () :> Cephei.QL.Times.Calendars.IFinland_Factory 
              let Germany = new Cephei.QL.Times.Calendars.CGermany_Factory () :> Cephei.QL.Times.Calendars.IGermany_Factory 
              let HongKong = new Cephei.QL.Times.Calendars.CHongKong_Factory () :> Cephei.QL.Times.Calendars.IHongKong_Factory 
              let Hungary = new Cephei.QL.Times.Calendars.CHungary_Factory () :> Cephei.QL.Times.Calendars.IHungary_Factory 
              let Iceland = new Cephei.QL.Times.Calendars.CIceland_Factory () :> Cephei.QL.Times.Calendars.IIceland_Factory 
              let India = new Cephei.QL.Times.Calendars.CIndia_Factory () :> Cephei.QL.Times.Calendars.IIndia_Factory 
              let Indonesia = new Cephei.QL.Times.Calendars.CIndonesia_Factory () :> Cephei.QL.Times.Calendars.IIndonesia_Factory 
              let Italy = new Cephei.QL.Times.Calendars.CItaly_Factory () :> Cephei.QL.Times.Calendars.IItaly_Factory 
              let Japan = new Cephei.QL.Times.Calendars.CJapan_Factory () :> Cephei.QL.Times.Calendars.IJapan_Factory 
              let JointCalendar = new Cephei.QL.Times.Calendars.CJointCalendar_Factory () :> Cephei.QL.Times.Calendars.IJointCalendar_Factory 
              let Mexico = new Cephei.QL.Times.Calendars.CMexico_Factory () :> Cephei.QL.Times.Calendars.IMexico_Factory 
              let NewZealand = new Cephei.QL.Times.Calendars.CNewZealand_Factory () :> Cephei.QL.Times.Calendars.INewZealand_Factory 
              let Norway = new Cephei.QL.Times.Calendars.CNorway_Factory () :> Cephei.QL.Times.Calendars.INorway_Factory 
              let NullCalendar = new Cephei.QL.Times.Calendars.CNullCalendar_Factory () :> Cephei.QL.Times.Calendars.INullCalendar_Factory 
              let Poland = new Cephei.QL.Times.Calendars.CPoland_Factory () :> Cephei.QL.Times.Calendars.IPoland_Factory 
              let SaudiArabia = new Cephei.QL.Times.Calendars.CSaudiArabia_Factory () :> Cephei.QL.Times.Calendars.ISaudiArabia_Factory 
              let Singapore = new Cephei.QL.Times.Calendars.CSingapore_Factory () :> Cephei.QL.Times.Calendars.ISingapore_Factory 
              let Slovakia = new Cephei.QL.Times.Calendars.CSlovakia_Factory () :> Cephei.QL.Times.Calendars.ISlovakia_Factory 
              let SouthAfrica = new Cephei.QL.Times.Calendars.CSouthAfrica_Factory () :> Cephei.QL.Times.Calendars.ISouthAfrica_Factory 
              let SouthKorea = new Cephei.QL.Times.Calendars.CSouthKorea_Factory () :> Cephei.QL.Times.Calendars.ISouthKorea_Factory 
              let Sweden = new Cephei.QL.Times.Calendars.CSweden_Factory () :> Cephei.QL.Times.Calendars.ISweden_Factory 
              let Switzerland = new Cephei.QL.Times.Calendars.CSwitzerland_Factory () :> Cephei.QL.Times.Calendars.ISwitzerland_Factory 
              let Taiwan = new Cephei.QL.Times.Calendars.CTaiwan_Factory () :> Cephei.QL.Times.Calendars.ITaiwan_Factory 
              let TARGET = new Cephei.QL.Times.Calendars.CTARGET_Factory () :> Cephei.QL.Times.Calendars.ITARGET_Factory 
              let Turkey = new Cephei.QL.Times.Calendars.CTurkey_Factory () :> Cephei.QL.Times.Calendars.ITurkey_Factory 
              let Ukraine = new Cephei.QL.Times.Calendars.CUkraine_Factory () :> Cephei.QL.Times.Calendars.IUkraine_Factory 
              let UnitedKingdom = new Cephei.QL.Times.Calendars.CUnitedKingdom_Factory () :> Cephei.QL.Times.Calendars.IUnitedKingdom_Factory 
              let UnitedStates = new Cephei.QL.Times.Calendars.CUnitedStates_Factory () :> Cephei.QL.Times.Calendars.IUnitedStates_Factory 
              let WeekendsOnly = new Cephei.QL.Times.Calendars.CWeekendsOnly_Factory () :> Cephei.QL.Times.Calendars.IWeekendsOnly_Factory 
            end

          module Daycounters =
            begin
              let Actual360 = new Cephei.QL.Times.Daycounters.CActual360_Factory () :> Cephei.QL.Times.Daycounters.IActual360_Factory 
              let Actual365Fixed = new Cephei.QL.Times.Daycounters.CActual365Fixed_Factory () :> Cephei.QL.Times.Daycounters.IActual365Fixed_Factory 
              let ActualActual = new Cephei.QL.Times.Daycounters.CActualActual_Factory () :> Cephei.QL.Times.Daycounters.IActualActual_Factory 
              let Business252 = new Cephei.QL.Times.Daycounters.CBusiness252_Factory () :> Cephei.QL.Times.Daycounters.IBusiness252_Factory 
              let OneDayCounter = new Cephei.QL.Times.Daycounters.COneDayCounter_Factory () :> Cephei.QL.Times.Daycounters.IOneDayCounter_Factory 
              let SimpleDayCounter = new Cephei.QL.Times.Daycounters.CSimpleDayCounter_Factory () :> Cephei.QL.Times.Daycounters.ISimpleDayCounter_Factory 
              let Thirty360 = new Cephei.QL.Times.Daycounters.CThirty360_Factory () :> Cephei.QL.Times.Daycounters.IThirty360_Factory 
            end
        end

      module Utilities =
        begin
        end
    end
